A clone of dev.to web application made to recreate the basic functionalities of a micro blogging platform
- Register as a User
- Create Communities
- Create Articles
- Clap for Articles
- Comment on Articles
- Infinite Feed
- Create Tags
- Create Listings
- Manage Content
To get a local copy up and running follow these simple steps.
- Clone the repository using the following command
git clone https://github.com/Lunaticsatoshi/dev-to-clone.git
# After cloning, move into the directory having the project files using the change directory command
cd dev-to-clone
Make sure you have Docker and docker-compose installed on your machine.
-
Add environment file .env in server directory with the variables fiven in the .env.example file.
-
Run the following command in the project directory itself.
docker-compose -f docker/docker-compose.debug.yml up --build
-
Open http://localhost:8000 to view it in the browser.
Make sure you have Python and django installed on your machine.
NOTE:
The project was made with python version 3.9. and requires pipenv
pip install pipenv
- Create a virtual environment using pipenv where all the required python packages will be installed
# Use this on Windows
py -m pipenv shell
# Use this on Linux and Mac
python -m pipenv shell
- Install pipenv
# Windows
pip install pipenv
# Linux and Mac
pip install pipenv
- Install all the project Requirements
pipenv install
-Apply migrations and create your superuser (follow the prompts)
# apply migrations and create your database
python manage.py migrate
# Create a user with manage.py
python manage.py createsuperuser
- Run the development server
# run django development server
python manage.py runserver
-
Add environment files in frontend directory.
package/client/.env
fileNODE_ENV = "development" NEXT_APP_PRODUCTION_API_ENDPOINT = "production_url" NEXT_APP_DEVELOPMENT_API_ENDPOINT = "http://localhost:8000"
-
To install all the dependencies run the following command in root directory.
yarn install
-
Run the following command in the root directory.
yarn dev
-
Open http://localhost:3000 to view it in the browser.
This project is licensed under the GPL License - see the LICENSE.md file for details
Since this is an open source project all suggestions, requests and bug reports are always welcomed. If you have any don't forget to leave them in the issues section. But we recommend creating an issue or replying in a comment to let us know what you are working on first that way we don't overwrite each other.