Inspiration

We found working with multi-lingual teams to be difficult. Especially when discussing high level details, because of the language we respectively learned Computer Science in, even the most basic terminologies may be difficult to translate. We can only imagine the amount of developer talents that are untapped because we cannot understand or critique each other's technical ideas.

What it does

Codex is an AI-powered developer tool that integrates with a team's GitHub repository, allowing every member of the team to view the technical comments in the repository in their native language while also maintaining the repository's structure to ensure version control of comments from different languages.

How we built it

We used FastAPI to build a backend that does version control of the comments and stores relevant translations in the MongoDB. Translations are generated through an LLM workflow that also features content moderation built with Dify.ai and gpt-4o-mini. Through integration with Codex, a set of scripts and git hooks are provided for the developers' local machines to keep track of comment translations, etc. We also provide a web interface built with Next.js to view the annotated code in their native language using calls to the GitHub API to fetch up-to-date version information.

For hosting, we hosted our FastAPI on AWS using EC2 and we hosted our web interface on Vercel with a domain name created through GoDaddy.

Challenges we ran into

Due to the abstracted versioning of comments, we had to deal with a lot of merge issues, which we were able to solve by providing multi-step scripts. Additionally, providing code to a developer space meant we assume certain things about our developer's workspace. Ideally, we want to move away from that and provide simple executables in the future.

Accomplishments that we're proud of

Codex can integrate multiple languages across multiple members in a single repository without raising any merge conflicts. This means everyone can code and comment in the language of their choice for others to understand.

What we learned

We explored technology that we were previously unfamiliar with. Many of our team have never used AWS or had to integrate complex frontend functions with backend APIs. Therefore this event was a great learning experience for all of us.

What's next for Codex

We want to expand to languages other than Python, and since we use landmarks to mark translation locations, we can easily expand to translating READMEs and other document types. We also want to add issues and PRs to our web interface, so that those can be translated as well. There are a lot of places where language barriers affect the developer experience, and with Codex, we hope to break those barriers down one by one.

Share this project:

Updates