|
| 1 | +--- |
| 2 | +title: AntAlmanac Planner |
| 3 | +--- |
| 4 | + |
| 5 | +## About |
| 6 | + |
| 7 | +AntAlmanac Planner is a web application designed to aid UCI students with course discovery and planning. We consolidate public data available on multiple UCI sources via [Anteater API](https://docs.icssc.club/docs/about/anteaterapi) to improve the user experience when planning course schedules. Features include: |
| 8 | + |
| 9 | +- **A drag-and-drop multi-year course planner**: |
| 10 | + - Select multiple majors and minors |
| 11 | + - Import your unofficial transcript via [StudentAccess](https://www.reg.uci.edu/access/student/transcript/?seg=U) to automatically fill in your roadmap to date |
| 12 | + - View how your planned roadmap fulfills your **major**, **specialization**, **minor**, and **GE** requirements |
| 13 | + - Import any **transferred courses**, **AP exams**, and **GE/Elective credits** |
| 14 | + |
| 15 | + |
| 16 | + |
| 17 | +- **Course Search**: |
| 18 | + - Recent offerings |
| 19 | + - Grade distribution visualizations |
| 20 | + - Visual prerequisite tree |
| 21 | + - Historic Schedule of Classes data |
| 22 | + - Reviews from UCI students |
| 23 | + |
| 24 | + |
| 25 | + |
| 26 | +- **Instructor Search**: |
| 27 | + - Grade distribution visualizations |
| 28 | + - Historic Schedule of Classes data |
| 29 | + - Reviews from UCI students |
| 30 | + |
| 31 | + |
| 32 | + |
| 33 | +## Technology |
| 34 | + |
| 35 | +### Frontend |
| 36 | +- [React](https://react.dev/) - Library to build dynamic, component-based UIs. |
| 37 | +- [Next.js](https://nextjs.org/) - React framework with server-side rendering. |
| 38 | +- [Material UI](https://mui.com/material-ui/) - React component library that implements Google's Material Design. |
| 39 | + |
| 40 | +### Backend |
| 41 | +- [Anteater API](https://github.com/icssc/anteater-api) - API maintained by ICSSC for retrieving UCI data. |
| 42 | +- [Express](https://expressjs.com/) - Minimalist backend framework for Node.js. |
| 43 | +- [tRPC](https://trpc.io/) - Library for type-safe APIs. |
| 44 | +- [PostgreSQL](https://www.postgresql.org/) - Relational database for storing user data and planners. |
| 45 | +- [Drizzle ORM](https://orm.drizzle.team/) - High-performance type-safe SQL-like access layer. |
| 46 | + |
| 47 | +### Tooling |
| 48 | +- [SST](https://sst.dev/) - Infrastructure as code framework for AWS deployment. |
| 49 | +- [TypeScript](https://www.typescriptlang.org/) - JavaScript with type-checking. |
| 50 | + |
| 51 | +## History |
| 52 | +AntAlmanac Planner was originally created in 2020 under the name **PeterPortal** by a team of ICSSC Projects Committee members led by @uci-mars, aiming to unify fragmented course information and long-term planning resources in one application. |
| 53 | + |
| 54 | +In February 2026, PeterPortal [merged](https://docs.icssc.club/docs/about/antalmanac/merge) with [AntAlmanac](https://github.com/icssc/AntAlmanac/) into one ultimate course planning platform. Following the merger, PeterPortal was rebranded as **AntAlmanac Planner**, while the original AntAlmanac became **AntAlmanac Scheduler**. |
| 55 | + |
| 56 | +| Year | Project Lead | |
| 57 | +| -------------- | ---------------------------------------------------- | |
| 58 | +| 2020 - 2021 | [@uci-mars](https://github.com/uci-mars) | |
| 59 | +| 2021 - 2022 | [@chenaaron3](https://github.com/chenaaron3) | |
| 60 | +| 2022 - 2023 | [@ethanwong16](https://github.com/ethanwong16) | |
| 61 | +| 2023 - 2024 | [@js0mmer](https://github.com/js0mmer) | |
| 62 | +| 2024 - 2025 | [@Awesome-E](https://github.com/Awesome-E) | |
| 63 | +| 2025 - Present | [@CadenLee2](https://github.com/CadenLee2) | |
| 64 | + |
| 65 | +## Contributing |
| 66 | +We welcome all open-source contributions! A guide on how to contribute can be found on the Getting Started tab. |
0 commit comments