Skip to content

eCodeVoyager/Sotto-Jachai-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

86 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“Š Sotto-Jachai Project Overview

Project Overview

Sotto-Jachai is a secure system designed to prevent propaganda and false information, particularly during mass movement. Utilizing the MERN stack (MongoDB, Express.js, React.js, Node.js) and advanced cryptography with 128-bit small hashing, the system ensures data integrity and security. Organizers can log in, submit content, and the data is hashed and verified by an admin team. Users can then verify the content using a key, ensuring that only truthful and validated information is shared.


πŸš€ Features

  • Content Validation: Prevents the spread of false information by verifying content using secure hashing methods.
  • User Authentication: Organizers and users can log in to submit and verify content.
  • Admin Verification: Admin team hashes and verifies submitted content.
  • High Security: Uses 128-bit small hashing for data security.

πŸ—οΈ System Architecture

  • Architecture: Modular Monolith with clear separation of concerns for maintainability and scalability.
  • Security: Implements HTTP Parameter Pollution (HPP) protection and rate limiting for enhanced security.

πŸ–₯️ Frontend

Frontend Technologies Used

React.js Redux Tailwind CSS Shadcn UI React Router

Deployment Instructions

Vercel

Key Features

  • Login & Authentication: Secure login for organizers and admins using token management with cookies.
  • Content Submission: Organizers can submit content with image upload via drag and drop.
  • Verification Dashboard: Users can verify content authenticity using a unique key.
  • Admin Panel: Admins can view, hash, and approve or reject content submissions with secure actions.
  • State Management: Managed with Redux for efficient state handling.
  • Real-time Updates: New post creation and status updates provide a real-time experience.

Setup Instructions for Frontend

  1. Clone the repository:

    git clone https://github.com/eCodeVoyager/Sotto-Jachai-Project.git
  2. Install dependencies:

    cd Sotto-Jachai-Project/frontend
    npm install
  3. Start the development server:

    npm run dev

πŸ› οΈ Backend

Technologies Used

Node.js Express.js MongoDB Mongoose JWT OAuth2 Joi

Deployment

Azure

Key Features

  • Content Hashing Key: Utilizes 128-bit small key to secure and validate content.
  • API Rate Limiting: Limits the number of requests to prevent abuse and enhance security.
  • Scalable Modular Monolith: Structured with a modular monolith architecture, ensuring maintainability and scalability.

Setup Instructions

  1. Clone the repository:

    git clone git clone https://github.com/eCodeVoyager/Sotto-Jachai-Project.git
  2. Install dependencies:

    cd Sotto-Jachai-Project/backend
    npm install
  3. Set up environment variables:

    • Create a .env file in the root directory.
    • Add the necessary environment variables, such as database connection strings, secret keys, etc.
  4. Start the development server:

    npm run dev

πŸ“ Environment Variables

Create a .env file in both frontend and backend directories with the following keys .env.example file.

πŸ§‘β€πŸ’» Contributing

We welcome contributions! Please fork the repository and submit a pull request for review.


πŸ‘₯ Team Members


πŸ“¬ Contact

For any inquiries or support, please reach out to any of our member thought email.

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors