A full-stack web application built using the MERN (MongoDB, Express.js, React, Node.js) stack. This application allows users to register, log in, view a list of articles, see detailed information about each article, create new articles, and update existing ones.
-
User Authentication:
- Users can register with a unique email and password.
- Existing users can log in securely.
-
Article Listing:
- View a list of all articles on the homepage.
-
Article Details:
- Click on an article to view detailed information, including the article content, author, and creation date.
-
Create Article:
- Authenticated users can create new articles by providing a title and content.
-
Update Article:
- Authors can update their own articles, modifying the title and content.
Make sure you have the following installed before setting up the project:
-
Node.js and npm: Download and install Node.js
-
MongoDB: Install MongoDB
-
Clone the repository:
git clone https://github.com/jcblanc2/PenX.git
-
Navigate to the project directory:
cd PenX
-
Install server dependencies:
cd api npm install
-
Install client dependencies:
cd ../penx npm install
-
Server Configuration:
-
Create a
.env
file in theapi
directory and set the following variables:PORT=3000 MONGODB_URI=... JWT_SECRET=your-secret-key
-
-
Start the server:
cd api npm start
-
Start the client:
cd penx npm run dev
-
Open your browser and navigate to
http://localhost:5173/
to access PenX.
This project is licensed under the MIT License - see the LICENSE file for details.