From 2bd9b018a94928a8ef0efceec13002143590cdef Mon Sep 17 00:00:00 2001 From: Braeden Sowinski Date: Wed, 16 Feb 2022 14:02:30 -0800 Subject: [PATCH] Update README.md --- README.md | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 97 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index db1a5d9..62ac784 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,99 @@ -# School-Management-System -I want to create a School Management system to improve my GoLang skills to transition into an Intermediate GoLang developer. +# School Management API [![GoLang](https://go.dev/) -This is a full API to allow students to check their schedule, locker information and possibly grades in the future along with personal information. -It allows for teachers to view their information and in the future manage classes, see students in a class, schedule, etc. -It allows admins to update most information and view information. Those who run the school and help create the schedules or help students update information like names, classes, etc. +The backend API for a school management system accessible by staff and students. -Possible in the future when the API is complete I may start working on the front end to make it fully functional. +Explore the docs ยป +
+
+ +## About The Project + +Originally started as a personal project to improve my overall Go knowledge and skills, driven by the complains +of my current school management system for students to view their grades, credits, course selections etc. I took +this on as a full project to work on for my Software Engineering class and is now a staple of my work. I plan to +work on this till completion, starting with this API, and then the front end, learning new tricks and languages +along the way. + +## Future Plans + +After the majority completion of vital api functionalities such as the ability to update information, create new +information, generate information, delete information, authentication etc. I plan on creating a new repository +for a new frontier of this project. I plan on making the [School Management Website](https://github.com/SowinskiBraeden/school-management-website). + +This is most likely going to be written in another programming language or framework I am unfamiliar with. The +idea is to have a modern designed website capable of being used easily on any device or platform. I may use the +[React.js](https://reactjs.org/) or [Vue.js](https://vuejs.org/) frameworks to build the front end design. +
+ +### Built With + +* [Golang](https://go.dev/) +* [GoFiber](https://gofiber.io/) +* [GoMongo Driver](https://docs.mongodb.com/drivers/go/current/) + +## Getting Started + +The systems is easy to start and your local machine. Eliminating and long unforgiving configurations you may face in other software. + +### Installation + +1. Clone the repo +``` + $ git clone https://github.com/SowinskiBraeden/school-management-api.git + $ cd school-management-api +``` + +2. Rename `.env.example` to `.env` +3. Enter desired values into `.env` + ``` + mongoURI='your mongo URI' + dbo=school + secret='your secret' + PORT='your desired port' + SYSTEM_EMAIL='your system email' + SYSTEM_PASSWORD='your system email password' + ``` +4. Run the sytem in your console +``` + go run main.go +``` +5. Build and compile the system into an executable +``` + go build +``` +
+ + +## Usage + +The usage for this API is in the name, school management, it's not an easy task in the areas I live near. Overcrowded schools are far too common and the need for a better school management system is there. The current systems issued by the government work but are poor and outdated. + + + +## Contributing + +Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**. + +If you have a suggestion that would make this better, please create a pull request. You can also simply open an issue with the tag "enhancement". +Don't forget to give the project a star! Thanks again! + +1. Clone the Project +2. Create your Feature Branch (`git checkout -b update/AmazingFeature`) +3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`) +4. Push to the Branch (`git push origin update/AmazingFeature`) +5. Open a Pull Request + + + + +## License + +Distributed under the MIT License. See [`LICENSE`](LICENSE) for more information. + + + +## Contact + +Your Name - [@BraedenSowinski](https://twitter.com/BraedenSowinski) - sowinskibraeden@gmail.com + +Project Link: [https://github.com/SowinskiBraeden/school-management-api](https://github.com/SowinskiBraeden/school-management-api)