◎◎ A comprehensive multi-user blog app
Click on the thumnail to visit the demo
This is a full featured Django Blog App that is customizable and extendable. This App contains almost every fucntionality a multi-user blog needs.
For better view of the project visit the Demo Site.
- Multi User Authentication
- Post CRUD
- Comments and Reply Functionalities
- Search Fuctionalies
- Tag, Categories and top Categories(based on posts count) Functionalities.
- Profile create & Profile Update on registration
- Visual Post editor(medium-editor plugin)
- Featured Post, Popular Posts and Recent posts
- Post views count.
- Redirect alert massages.
- Preview image before upload.
- Auto image optimization on upload.
- Authors page with posts and commnets count.
- Page for posts of individual tag, category and user.
- User Authentication to view pages
- Delete post-thumbnail when post deleted
- Admin Panel &User dashboard with Jquery live search
- Newsleters & Contact Page
- Category multi-select functionalities (Jquery multiselect plugin)
- Python Code syntax highlighter on Details view(Jquery prism plugin)
[❗] Look through the setup process before using this project so that you can avoid errors.
❗Make sure You have python3 and pip installed on your machine.
-
Create a folder where you want to clone the project.
- I am creating a folder named ‘example’ in desktop
-
Now navigate to "example" via cmd or terminal
(Mac)
cd ~/desktop/example
(Windows)
cd C:\Users\YourDesktopName\Desktop\example
ℹ️ Optional but better to use a virtual environment for every project.
If don’t have any virtual environment manager installed in your machine then install one. (I will use pipenv)
For installing pipenv run
pip install pipenv
- Now clone the project and navigate to BinBlogger-master
git clone [email protected]:m-nobinur/BinBlogger.git
cd BinBlogger-master
- Install all the dependencies for the project.
pipenv install -r requirements.txt
- Activate the virtual environment
pipenv shell
- Create a .env file in the project directory, open it with your favorite text editor and paste the bellow lines
SECRET_KEY=[YOUR SECRET_KEY]
DEBUG=True
MAILCHIMP_API_KEY=[YOUR MAILCHIMP_API_KEY]
MAILCHIMP_DATA_CENTER=[YOUR MAILCHIMP_DATA_CENTER]
MAILCHIMP_EMAIL_LIST_ID=[YOUR MAILCHIMP_DATA_CENTER]
- Now generate a secret key for your project.
run python on your shell
python
>>>from django.core.management.utils import get_random_secret_key
>>>get_random_secret_key()
>>>[ YOUR SECRET KEY ]
- Copy the secret key, open .env file again and assign the secret key. If you don't have mailchimp credentials then make sure your file look like this
SECRET_KEY=YOUR_SECRET_KEY
DEBUG=True
MAILCHIMP_API_KEY=''
MAILCHIMP_DATA_CENTER=''
MAILCHIMP_EMAIL_LIST_ID=''
⚠️ make sure not to use any space between the equal(=) sign or any quotations(“) for the secret key
ℹ️ If you want to setup Mailchimp now then go to this section
- Make a migrations.
python manage.py makemigrations
- You are all setup, let’s migrate now.
python manage.py migrate
- Create a superuser to rule the site 😎
python manage.py create superuser
follow the instructions
- Hahh! Long wait. Let’s visit the site now
python manage.py runserver
Visit http://127.0.0.1:8000/ and rock 🤘
Fork the project to contribute and give a star❤️ to support.
Find me on LinkedIn @mohammadnobinur