A platform that allows authenticated users to upload files, so as to extract the metadata of the uploaded file and the metadata is displayed
- 84Meta
- See list Here1
- FEATURES
- DESIGN DOCUMENTATION
- DEVELOPER DOCUMENTATION
- GETTING STARTED AND USAGE REQUIREMENTS
- ACKNOWLEDGEMENTS
- README CONTRIBUTING AUTHORS
- REFERENCES/FOOTER
- Require User Authentication to perform extraction of metadata
- Allows File upload
- Extract metadata from PDF, Images (Jpeg, Jpg, Png etc.), JSON, CSV
- Validate file type
- Validate file size
- Save uploaded files for further use
- Share to social media
- Download metadata
- Export Metadata
- HTML
- CSS
- JAVASCRIPT
- PYTHON
- DJANGO
- SQLite offered by Django
- Digital Ocean provided by Zuri
- PasswordResetTokenGenerator
- account_activation_token
- EmailMessage
- Redirect and Render
- FileSystemStorage
- Pillow Library from PIL
- Python Magic library
- Six
- Twitter share API
- Facebook share API
- Home page/ Landing page
- Dashboard [Extraction space]
- About Us Page
- Contact us page
- Login Page
- Sign up Page
- Forgot password page
- Frequently asked questions [FAQ] page
- User Authentication using Django Authentication Systems
- Database management for user profile and user uploads
- File type and size validation
- File metadata extraction
- Communication with frontend using Django Templates
- Link to Schema
1. On noticing any issues with code
- Search through existing issues to find out if issue has been logged by another contributor
- Please create a new issue if it doesn't already exist that's detailed for the developers to understand and fix.
2. Label the issue correctly for appropriate handling
1. Search for an issue you can fix
- Note the tasks that need fixing within the issue
2. Fork repo and work on the issue in order to keep development area secure
3. Create pull request on finished fix and ensure it is linked to corresponding issue by attaching the appropriate keyword
- If you are a base developer in the project or you're working on the same repository. Reference issue by keyword e.g. resolves #12, closes #13
- If you are contributing from external repository, reference issue by repository name and issue number e.g. proj_fetch_meta_data_Team_84 closes #13
- Contributions and Feedback are welcome
-
Fork the main branch of the repository
-
Clone the forked repository to local
git clone forked-repo-address
-
Set this repo as upstream to ensure your repository is up to date
git remote add upstream https://github.com/zuri-training/proj_fetch_meta_data_Team_84.git
-
Pull changes from our repo
git fetch upstream
-
Pull changes from our repo to your remote repo
git pull upstream main
-
Stage your changes
-
For all files
git add -A
-
For specific file
git add 'example.html'
-
-
Write descriptive commit message
git commit -m 'example change to example issue on example file'
-
Push your changes to your remote repo
git push
- Create a pull request on our main branch
- Give detailed description on your pull request and link to approriate issue See Fixing an Issue above
- Wait for our reviewers to approve pull request for merging
- Ensure you have dependencies installed.
- List extra dependencies in branch readMe and create requirements.txt file with dependencies which is pushed along with other files.
- Ensure secret keys are kept secret and virtual environment is placed in git ignore files
KNOWLEDGE OF:
- HTML5
- CSS
- Javascript
- Django including Class based views and Function based views, Authentication, Forms
- Python
INSTALLATION
- An Integrated development environment [IDE]
- Examples
- Git
- Git Desktop for collaboration Optional
- Python 3.10 or higher
- Installation of dependencies See Dependencies above
- Virtual Environment
****
Latest version(maintained builds) for all installation requirements as at 4/8/2022
Windows versions are for 64bit
****
- We'd like to thank the entire Zuri Team and Ingressive for Good community for this opportunity to learn and grow as developers and designers.
- It's an honour to work with such a decicated group of mentors.
- Special Thanks to our project mentor Tolu Folorunsho. Thanks for all you do.
Footnotes
-
- Wanjiru Mbugua https://github.com/mbuguaellen TEAM LEAD and DESIGNER
- Isioma Ekwemuka https://github.com/Issiedoesit ASSISTANT TEAM LEAD and DEVELOPER
- Temitope Osifalujo https://github.com/topnics ASSISTANT TEAM LEAD and DEVELOPER
- Samuel Godson https://GitHub.com/samuelgodson55 DEVELOPER
- Olubunmi Olawoyin https://github.com/olawoyintosin DESIGNER
- Wuraola Nureni http://github.com/Wuraola-Omotoyosi DESIGNER
- Oreoluwa Dahunsi https://github.com/OreoluwaDahunsi DESIGNER
- Chinonso Onyekonwu https://github.com/Nonso-hub DESIGNER
- Abdulbasit Ajibola https://github.com/Berseet DESIGNER
- Stanley Ibe https://github.com/ugoostanleyibe DEVELOPER
- Olayinka Olajumilo https://github.com/olamijulo2 DEVELOPER
- Victoria Akeju https://GitHub.com/vic-designs DESIGNER
- Adelaide Banibensu https://github.com/Ade-Bani/ DESIGNER
- Shalom Onyeukwu https://Github.com/Shalomking DEVELOPER
- Adesina Aladesae https://github.com/adesinna DEVELOPER
- George Ogundokun https://github.com/geonerd777 DESIGNER
- John Fadumiye http://github.com/Enojay DESIGNER
- Iyanuoluwa Olawoye https://github.com/SirIyanu DEVELOPER
- Taribor Ajuesi http://GitHub.com/Tarielenz DEVELOPER
- Oluwashola Adeola https://github.com/sholigezy DESIGNER
- Precious Nwogu https://github.com/preshwhyte DEVELOPER
- Olamilekan Ojebowa https://github.com/Lyon689 DEVELOPER
- Taiyelolu Abiri https://github.com/taiyeabiri DEVELOPER
- Isaac David https://github.com/Daeveed1 Designer