Welcome to the Hacktoberfest 2024 repository by ACM JEC! π Hacktoberfest is a month-long celebration of open-source software run by DigitalOcean, GitHub, and other partners. It is open to everyone, and all skill levels are welcome to participate. The goal is to encourage contributions to open-source projects and foster collaboration in the tech community.
To participate in Hacktoberfest with ACM JEC, follow these steps:
This project is developed using Vite + React. Follow the steps below to clone the repository, set up the development environment, and start working on your contributions.
Make sure you have the following installed on your machine:
Follow these steps to clone the repository and set it up locally:
# Clone the repository
git clone https://github.com/acmjec/Hacktober2024-Web_Development--GoHacktober-.git
# Navigate into the project directory
# Install dependencies
npm install
# Start the development server
npm run dev
The development server will be running at http://localhost:5173
. You can now view the web application in your browser.
The design for this project is provided in Figma. To implement it:
Header
, Footer
, Button
, Card
, etc.Button
, Card
, and Modal
generic to be used throughout the project.rem
, em
, %
, or vw
) and media queries.Following a structured and organized folder layout is crucial for scaling the project and keeping it maintainable. Below is a recommended folder structure for a Vite + React project.
/
βββ public/ # Public assets (favicons, images)
βββ src/ # Main source code
β βββ assets/ # Images, icons, fonts, etc.
β βββ components/ # Reusable components
β β βββ Button/ # Button component
β β β βββ Button.jsx
β β β βββ index.js
β β βββ Navbar/ # Navbar component
β β βββ ... # Other components
β βββ pages/ # Page components
β β βββ Home/ # Home page
β β βββ Dashboard/ # Dashboard page
β β βββ ... # Other pages
β βββ services/ # API calls and service functions
β βββ store/ # State management (e.g., Redux, Zustand)
β βββ styles/ # Global and shared styles
β βββ utils/ # Utility functions and helpers
β βββ App.jsx # Main App component
β βββ main.jsx # Vite's entry point
β βββ index.css # Global styles
βββ .gitignore # Files to ignore in the repository
βββ package.json # Project dependencies and scripts
βββ vite.config.js # Vite configuration file
assets/
: Holds all static files like images, icons, and fonts.components/
: Contains reusable UI components with each component having its own folder for related files (JSX, styles).pages/
: Contains the main pages of the application.services/
: Handles API requests and other service-related functions.store/
: Manages the application's state using a state management library.styles/
: Houses global styles or shared CSS files.utils/
: Contains utility functions or helper functions.App.jsx
: The main component that serves as the root of the application.vite.config.js
: Configures Vite for custom settings.useState
, useEffect
, etc.) for building UIs..jsx
), styles (.module.css
), and a potential test file.