Welcome to Project VAGE! This is a web app for anime fans to sell, buy, and trade anime goods such as badges, figures, illustration books, CDs, and more.
gitpush.sh: simple script to add, commit, and push to main with a custom message
A minimal full‑stack app with an React frontend and an Express backend.
Refer to .gitignore to see which files/folders are excluded. This README only describes tracked parts of the project.
- Install server dependencies:
npm install - Install client dependencies:
cd client && npm install - Start client (development):
npm startinsideclient/ - Start server: from project root, run
node server.js(or add a script inpackage.jsonif desired)
client/: React frontend (Create React App)public/: Static HTML and assets served by the clientsrc/: App source codeindex.js: App entry; mounts React and imports global stylesindex.css: Base styles from CRAcenter.css: Minimal global centering and simple sizing for buttons/inputsApp.js: Defines routes for pagesHome.jsx: Landing page and quick navigationLogin.jsx: Login form and auth flowSignup.jsx: Signup form and validationProfile.jsx: Protected profile page (requires token)NewPost.jsx: Create a new post with image uploadsPosts.jsx: List of posts with imagesreportWebVitals.js: Performance reporting helper
build/: Production build output (generated)
server.js: Express server setup and API mountingroutes/: Backend API route handlerslogin.js: Login endpointsignup.js: Signup endpointprofile.js: User profile endpoint (requires auth)posts.js: Posts listing/creation endpointsupload.js: Image upload endpoint
middleware/auth.js: JWT auth middleware for protected routes
db.js: Database connection/helperpackage.json: Root project metadata and scriptsclient/package.json: Client app metadata and scriptsREADME.md: This filegitpush.sh: Convenience script for committing and pushing
Note: Sensitive or large files/folders that should not be committed are listed in .gitignore. See that file for details rather than documenting them here.