DailyJournal is a blog site built using Node.js, Express, EJS, Mongoose, and MongoDB. It allows users to create, read, update, and delete blog posts, making it a perfect platform for sharing ideas and stories with the world.
- User-friendly interface for writing and managing blog posts.
- Supports Markdown formatting to add rich content to blog posts.
- Admin functionality for managing blog posts and users.
- Secure authentication using email/password or social media logins.
- User profile management with avatar support.
- Commenting system to engage with readers.
- Responsive design for optimal viewing on various devices.
Before running the application, ensure you have the following requirements met:
- Node.js (https://nodejs.org/) installed on your machine.
- MongoDB (https://www.mongodb.com/) set up and running.
- Clone the repository:
git clone https://github.com/your-username/DailyJournal.git
cd DailyJournal
- Install the dependencies:
npm install
-
Set up environment variables:
Create a
.env
file in the root directory of the project and provide the necessary environment variables. For example:PORT=3000 MONGODB_URI=mongodb://localhost:27017/daily_journal_db SECRET_KEY=mysecretkey
-
Seed the database (optional):
If you want to start with some dummy data, you can run the following command to seed the database:
node seed.js
- Start the server:
npm start
-
Visit
http://localhost:3000
in your web browser to access DailyJournal. -
Register an account or log in if you already have one.
-
Create, read, update, and delete blog posts from the dashboard.
-
Interact with readers through the comments section.
-
Enjoy sharing your thoughts and stories with the world!
If you want to contribute to DailyJournal, follow these steps:
-
Fork the repository.
-
Create a new branch with a descriptive name:
git checkout -b feature/your-feature-name
-
Make changes and test thoroughly.
-
Commit your changes:
git commit -m "Add your commit message here"
- Push to your branch:
git push origin feature/your-feature-name
- Create a pull request.
Happy blogging with DailyJournal! If you have any questions or issues, please don't hesitate to open an issue or contact us. We welcome contributions and hope you find DailyJournal a useful platform for your blogging needs!