diff --git a/README.md b/README.md index ea08447..f8bc94b 100644 --- a/README.md +++ b/README.md @@ -1,114 +1,164 @@ # NIRMAN Project Documentation -## Overview -NIRMAN is a project submission platform for NST-ADYPU. This repository serves as the database for the main website, containing team submissions and project information. - -Repository Link: [NIRMAN-SUBMission-of-NST-ADYPU](https://github.com/nst-sdc/NIRMAN-SUBMission-of-NST-ADYPU) - -## Tech Stack -- Frontend: HTML, CSS, JavaScript -- Data Storage: JSON files -- Version Control: Git - -## Project Structure -``` -NIRMAN-SUBMission-of-NST-ADYPU/ -├── teams/ -│ ├── team1/ -│ │ ├── data.json -│ │ └── assets/ -│ └── team2/ -│ ├── data.json -│ └── assets/ -└── README.md +## Repository Structure +This project consists of two separate repositories: +1. **Nirmaan-show**: Main showcase repository +2. **NIRMAN-SUBMission-of-NST-ADYPU**: Submission repository + +## Technology Stack +- **Frontend**: + - HTML5 + - CSS3 + - JavaScript (ES6+) + - Bootstrap for responsive design +- **Version Control**: Git +- **Hosting**: GitHub Pages + +## Project Setup + +### Prerequisites +- Git installed on your system +- Modern web browser (Chrome, Firefox, Safari) +- Text editor (VS Code recommended) + +### Local Development Setup +# Clone the repositories +```bash +git clone https://github.com/your-username/Nirmaan-show.git +git clone https://github.com/nst-sdc/NIRMAN-SUBMission-of-NST-ADYPU.git ``` ## Working with JSON Files ### JSON File Structure -Each team folder contains a `data.json` file with the following structure: ```json { - "teamName": "Team Name", - "projectTitle": "Project Title", - "members": [ - { - "name": "Member Name", - "role": "Role" + "teamName": "Example Team", + "members": [ + { + "name": "Member 1", + "role": "Developer" + } + ], + "projectDetails": { + "title": "Project Name", + "description": "Project Description" } - ], - "description": "Project Description", - "technologies": ["Tech1", "Tech2"], - "assets": { - "images": ["path/to/image1.jpg"], - "videos": ["path/to/video1.mp4"] - } } ``` -### Modifying JSON Files -1. Ensure proper JSON syntax -2. Use valid file paths for assets -3. Keep asset file names lowercase and without spaces -4. Validate JSON after modifications using a JSON validator +### JSON Modification Guidelines +1. Always validate JSON syntax using tools like [JSONLint](https://jsonlint.com/) +2. Keep backup before making changes +3. Use proper indentation (2 or 4 spaces) +4. Maintain consistent naming conventions +5. Add comments in separate documentation ## Handling 404 Errors -### Common Causes of 404 Errors -1. Incorrect file paths in JSON -2. Missing asset files -3. Case sensitivity issues in file names -4. Invalid folder structure - -### How to Fix 404 Errors -1. Check file paths in JSON files -2. Verify all referenced assets exist -3. Ensure correct case in file names -4. Validate folder structure matches the template - -## Contributing Changes - -### Setting Up Local Environment +### Common Causes +1. Incorrect file paths in HTML/CSS/JS files +2. Case sensitivity issues in filenames +3. Missing files or resources +4. Incorrect repository configuration + +### Prevention and Fixes +1. **Check File Paths**: + - Use relative paths correctly + - Verify file existence + - Maintain consistent casing + +2. **GitHub Pages Configuration**: + ```yaml + # In .github/workflows/pages.yml + name: Deploy to GitHub Pages + on: + push: + branches: [ main ] + ``` + +3. **Custom 404 Page**: + Create a `404.html` in root directory: + ```html + + + + Page Not Found + + +

404 - Page Not Found

+ Return to Home + + + ``` + +## Pull Request Process + +### Creating a Pull Request ```bash -# Clone the repository -git clone https://github.com/nst-sdc/NIRMAN-SUBMission-of-NST-ADYPU.git -cd NIRMAN-SUBMission-of-NST-ADYPU - -# Create a new branch +# Create new branch git checkout -b fix/team-name-404 -``` - -### Making Changes -1. Fix the identified issues -2. Test changes locally -3. Commit changes with descriptive messages -### Submitting Pull Request -```bash -# Add changes +# Make your changes +# Stage changes git add . -# Commit changes -git commit -m "Fix: Resolved 404 error for [team-name]" +# Commit with descriptive message +git commit -m "Fix: Team folder 404 error and path corrections" -# Push changes +# Push to your fork git push origin fix/team-name-404 -``` -Then: -1. Go to the [repository page](https://github.com/nst-sdc/NIRMAN-SUBMission-of-NST-ADYPU) -2. Click "Pull requests" -3. Click "New pull request" -4. Select your branch -5. Add description of changes -6. Submit pull request +# Create PR on GitHub +# Go to repository → Pull requests → New pull request +``` -## Testing Changes -1. Preview changes locally using a web server -2. Verify all assets load correctly -3. Check all links work as expected -4. Test on different browsers +### PR Guidelines +1. Provide clear description of changes +2. Reference related issues +3. Include testing steps +4. Add screenshots if UI changes +5. Request review from maintainers + +## Live Preview Testing +1. Enable GitHub Pages in repository settings +2. Wait for deployment (check Actions tab) +3. Test all navigation links +4. Verify team folder access +5. Check media loading +6. Test on multiple browsers + +## Common Issues and Solutions + +### 404 Errors +- Verify file exists in correct location +- Check case sensitivity +- Ensure proper GitHub Pages configuration +- Validate all internal links + +### JSON Issues +- Use JSON validator +- Check for missing commas +- Verify UTF-8 encoding +- Backup before editing + +## Maintenance + +### Regular Checks +1. Validate all links monthly +2. Update documentation as needed +3. Review and merge PRs promptly +4. Monitor GitHub Actions status + +### Best Practices +1. Keep consistent coding style +2. Document all major changes +3. Regular backups +4. Version control all changes ## Support -For issues or questions, please open an issue in the repository or contact the maintainers. - +For issues or questions: +1. Open GitHub issue +2. Tag relevant maintainers +3. Provide detailed problem description +4. Include error messages/screenshots