A web application that retrieves and displays personal school information using GraphQL, featuring user authentication, data visualization, and a comprehensive profile dashboard.
- User Authentication (Username/Email)
- GraphQL Data Retrieval
- Dynamic Profile Information
- SVG-based Statistics Graphs
- Responsive Design
- React (with TypeScript)
- Vite
- Apollo GraphQL
- Tailwind CSS
- React Router
- Axios
- Node.js (v18+)
- npm (v9+)
git clone https://github.com/[your-username]/graphql-profile-project.git
cd graphql-profile-projectnpm installCreate a .env file in the project root:
VITE_GRAPHQL_ENDPOINT=https://((DOMAIN))/api/graphql-engine/v1/graphql
VITE_AUTH_ENDPOINT=https://((DOMAIN))/api/auth/signin
# Development server
npm run dev
# Build for production
npm run build
# Preview production build
npm run preview- Login with username or email
- JWT-based authentication
- Secure token storage
- Automatic logout mechanism
The application provides SVG-based graphs:
- XP Progression
- Project Completion Rates
- Audit Ratios
- Custom Statistical Insights
# Run tests
npm run test
# Run coverage
npm run test:coveragegraphql-profile-project/
│
├── src/
│ ├── components/ # Reusable React components
│ ├── services/ # API and authentication services
│ ├── queries/ # GraphQL query definitions
│ ├── pages/ # Top-level page components
│ └── ...
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.
Recommended platforms:
- Netlify
- Vercel
- GitHub Pages
- Build the project:
npm run build - Deploy the
dist/directory to your chosen platform
- Ensure all environment variables are correctly set
- Check network tab for GraphQL query issues
- Verify JWT token management
Your Name - [your-email@example.com] Project Link: https://github.com/[your-username]/graphql-profile-project
- GraphQL
- React
- Tailwind CSS
- Apollo Client