BlackHistoryFacts is a web application built using ReactJS that provides users with positive contributions made by historically marginalized groups. The app aims to challenge false narratives that link race with positive contributions to society and shed light on the pervasive nature of systemic racism.
To install and run the application on your local machine, follow these steps:
- Clone the repository:
git clone https://github.com/asiakay/history-fact-app.git
- Navigate to the project directory:
cd history-fact-app
- Install dependencies:
npm install
- Ensure you have Node.js (version >= 14.0.0) and npm (version >= 6.0.0) installed on your machine.
- Create a Firebase project and obtain API keys:
- If you haven't already set up Firebase for this project, follow Firebase's setup instructions to create a Firebase project, set up Firebase Authentication, and obtain the necessary API keys.
- Create a
.env
file in the root directory with the following content:
REACT_APP_FIREBASE_API_KEY=your_api_key_here
REACT_APP_FIREBASE_AUTH_DOMAIN=your_firebase_project_id.firebaseapp.com
REACT_APP_FIREBASE_PROJECT_ID=your_firebase_project_id
- Add
.env
to your.gitignore
file to keep your API keys secret: - Run the application:
npm start
- Open your web browser and navigate to
http://localhost:3000
Features | Priority | Ease to Implement | Doing | Done |
---|---|---|---|---|
Styled HTML/CSS components | [x] | |||
React Hooks to manage state | [x] | |||
JSON Database | [x] | |||
Mobile Responsiveness | High | High | [x] | |
Accessibility | High | Medium | [x] | |
View by Category | High | Medium | [x] | |
User Authentication | High | High | [x] | |
Social Sharing | Medium | Low | ||
Multi-Language Support | Medium | Medium | ||
User Profiles | Medium | High | ||
Integration with External APIs | Medium | Medium | ||
Commenting System | Low | Medium | ||
Gamification/Interactive Elements | Low | Low | ||
Virtual Tours | Low | High |
We welcome contributions to the HistoryFacts project. If you encounter a bug, have a feature request, or want to contribute code, please follow these guidelines:
- Check the issue tracker for existing bugs and feature requests before opening a new issue.
- If you don't find an existing issue, open a new issue and describe the bug or feature request in detail.
- Assign the appropriate labels to the issue.
- Fork the repository and create a new branch for your feature or bug fix:
git checkout -b feature-branch-name
- Make changes to the code and commit them with a descriptive message:
git commit -m "Add new feature"
- Push your changes to your forked repository:
git push origin feature-branch-name
- Open a pull request and describe the changes you've made.