You can use Devlopr as a starter for building your own Site. we purposely keep the styling minimal and bare to make it easier to add your own flare and markup. (Under Active Development) !
Highly Customizable and No Hosting or Maintainence Cost is required !
devlopr uses Markdown Files to generate data like Blog Posts, Gallery, Shop Products etc. No external database is required.
To get started follow this Tutorial
or if you want to try fast :
- Fork this Repo with your name as your_username.github.io
- Visit your Fork repo at https://github.com/your_username/your_username.github.io
- Press "." in keyboard (this will open up vs-code editor in browser) of the repo.
- Customize config.yml file according to your needs (eg. change your Name, Email... etc.)
- Commit your changes, and push
- Wait for CI/CD to build your website. Visit Github Actions to see the build process.
- Once Ready, Your website will be ready at https://your_username.github.io β¨
- Happy Hacking your new site ! For Local changes you can clone locally.
Step 1: Fork this repo with your github username.
Step 2: Clone Locally
$ git clone https://github.com/your_github_username/your_github_username.github.io.git
$ cd your_github_username
Step 3: Now follow the below guides based on your OS.
To work locally with ubuntu, follow this commands.
Install Ruby :
$ sudo apt install ruby-full
$ ruby --version
ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux-gnu]
$ gem install jekyll bundler
$ bundle update
$ bundle install
$ bundle exec jekyll -v
jekyll 4.2.2
$ bundle exec jekyll serve --livereload
To work locally with windows machine, follow this commands. You might need to download and install ruby (with devkit) and git.
$ ruby -v
(ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [universal.x86_64-darwin21])
$ gem install jekyll bundler
$ bundler -v
Bundler version 2.3.23
$ bundle update
$ bundle install
$ bundle exec jekyll -v
jekyll 4.2.2
$ bundle exec jekyll serve --livereload
If you are running into permission issues running bundler, try the following:
$ sudo rm -rf _site
$ bundle update
$ bundle install
$ bundle exec jekyll serve
Start the server locally at http://127.0.0.1:4000/ or http://localhost:4000/
Run the following in your terminal :
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install ruby
Add the below in ~/.zshrc file:
Edit either the ~/.zshrc and ~/.zprofile files:
$ open -e ~/.zshrc
# override system ruby with homebrew-installed ruby
if [ -d "/opt/homebrew/opt/ruby/bin" ]; then
export PATH=/opt/homebrew/opt/ruby/bin:$PATH
export PATH=`gem environment gemdir`/bin:$PATH
On Mac Intel, add this at the end of your ~/.zshrc or ~/.zprofile file.
if [ -d "/usr/local/opt/ruby/bin" ]; then
export PATH=/usr/local/opt/ruby/bin:$PATH
export PATH=`gem environment gemdir`/bin:$PATH
fi
Save the file. This sets the Homebrew-installed Ruby to a higher priority than the system Ruby and adds the directory used for Ruby gems.
Close and reopen the Terminal window to pick up the changes to the configuration file. Or enter source ~/.zshrc or source ~/.zprofile to reset the shell environment without closing the Terminal window.
$ source ~/.zprofile
$ source ~/.zshrc
The source command reads and executes a shell script file, resetting the shell environment.
You should be able to see this :
$ ruby -v
ruby 3.3.4 (2024-07-09 revision be1089c8ec) [arm64-darwin23]
- Install churby and ruby-install with Homebrew
We will be using ruby-install to install ruby and chruby to change the current ruby version.
brew install chruby ruby-install
Install latest ruby version
ruby-install ruby
This will take a few minutes, and once itβs done, configure your shell to automatically use chruby:
echo "source $(brew --prefix)/opt/chruby/share/chruby/chruby.sh" >> ~/.zshrc
echo "source $(brew --prefix)/opt/chruby/share/chruby/auto.sh" >> ~/.zshrc
echo "chruby ruby-3.3.4" >> ~/.zshrc
If you are facing any problems not getting the version that you just now installed, here is a amazing guide : how to uninstall ruby on mac
If youβre using Bash, replace .zshrc with .bash_profile.
Quit and relaunch Terminal, then check that everything is working:
$ ruby -v
ruby 3.3.4 (2024-07-09 revision be1089c8ec) [arm64-darwin23]
- Install latest gems
$ gem install jekyll bundler
$ gem update --system 3.5.15
$ bundler -v
Bundler version 2.5.15
$ bundle update
$ bundle exec jekyll -v
jekyll 4.3.3
$ bundle exec jekyll serve --livereload
We use codeQL and dependabot alerts for vulnerabality analysis & fixes.
$ bundle audit
This Project has actions to auto deploy jekyll to github pages and firebase. The deployment target can be set by editing the DEPLOY_STRATEGY
file. Valid values are:
none
: default value. use this if you don't want to deploy the site.gh-pages
: deploys to github pages. This uses a custom action available in the Marketplace - Jekyll Deploy Actionfirebase
: deploys to firebase. Before you can use this you need to first create a firebase project here. You can signup for a Free Spark Plan. Then, in your github repo's settings, go to the secrets section and add the following:FIREBASE_TOKEN
: your firebase token. you can get this by runningfirebase login:ci
with the firebase cli.FIREBASE_PROJECT_ID
: the project id of the project you just created
- Github Pages Demo - here
- Firebase Demo - here
- Netlify Demo - here
- Vercel Demo - here
- Heroku Demo - here
- AWS Amplify Demo - here
- Local CMS Admin Support using Jekyll Admin
- Headless CMS Admin Support using Netlify CMS
- Supports Latest Jekyll 4.x and Bundler
- Stylesheet built using Sass
- Comments using Hyvor and Disqus
- SEO-optimized
- Real Time Search - Algolia
- Sell Stuff (Ecommerce) in your Blog using Snipcart
- Send Newsletters using Mailchimp
- Contact Forms Support for Getform, Formspree
- Coding Activity using Wakatime
- Hosting Support for Github Pages, Netlify, Vercel, Heroku, AWS Amplify, Firebase
- CI/CD Support using Travis CI
You can easily manage the site locally using the Jekyll admin : http://localhost:4000/admin
You can check out for all changelogs here
git remote -v
git remote add upstream https://github.com/sujaykundu777/devlopr-jekyll.git
git fetch upstream
git checkout master
git merge upstream/master
git push
Building the Image :
docker build -t my-devlopr-jekyll-blog .
Running the container :
docker run -d -p 4000:4000 -it --volume="$PWD:/srv/jekyll" --name "my_blog" my-devlopr-jekyll-blog:latest jekyll serve --watch
You can run the app in development mode : (your changes will be reflected --watch moded)
Serve the site at http://localhost:4000 :
docker-compose -f docker-compose-dev.yml up --build --remove-orphans
You can run the app in production mode : (your changes will be reflected --watch moded)
Serve the site at http://localhost:4000 :
docker-compose -f docker-compose-prod.yml up --build --remove-orphans
Stop the app :
docker-compose -f docker-compose-prod.yml down
Once everything is good and ready to go live -
docker-compose -f docker-compose-prod.yml up --build --detach
This project exists thanks to all the people who contribute.
Contributions are more than just welcome. Fork this repo and create a new branch, then submit a pull request
-
1.Fork it http://github.com/sujaykundu777/devlopr-jekyll/fork
-
2.Create your feature branch
git checkout -b my-new-feature
-
3.Commit your changes
git commit -am 'Add some feature'
-
4.Push to the branch
git push origin my-new-feature
-
5.Create new Pull Request
Back this project by Donating to our Open Collective or if you like my work Buymeacoffee.
Thanks to all our Backers ! Become a Backer
You can contact me, if you need any help via Email. If you like the project. Don't forget to β !
The theme is available as open source under the terms of the MIT License. You can do anything you want, including projects for your clients, as long as you mention an attribution back (credit links in footer). See the Licence file