Inspiration

We wanted to create something inspired off websites such as HackerRank and LeetCode. We were looking to create an online Python interpreter that was simple for on the go and easy-to-use for beginning Python developers.

What it does

It's a web application that allows users to run and compile Python code.

How we built it

We knew that this would take a diverse set of skillsets to make from cloud services to APIs to multiple programming languages. To handle the backend to our project, asp.net was used for Visual Studio's familiarity to our team members. We then incorporated Bootstrap 4 along with some Javascript and jQuery in asp.net to make up our frontend. To run and compile the actual Python code entered by the user, we used an API by Sphere Engine for compiling and running code. For simplicity and time-sake, we chose to just stick with the Python functionality of our API for now. Also, we reserved a free domain from an external domainer to link to our AWS EC2 Windows Server, which hosts the asp.net web application.

Challenges we ran into

Our first major challenge was with API calls. We switched APIs in the middle due to some API keys having several issues. We were able to find good documentation on utilizing the use of API keys with jQuery, and also, a shout-out to Kevin Dice who really helped out with that as well! Once we were able to fully run the web app on our local machines, we had trouble when moving the app to AWS. For some reason, the Bootstrap CSS we imported into asp.net would not import correctly into AWS, which required a manual transfer and a lot of time to figure out.

Accomplishments that we're proud of

Building an online IDE--something we were not for sure if we had the know-how at the beginning

What we learned

There was definitely plenty of learning that went on here! No one in our group had a total expertise in everything. As a group, we learned about a modern frontend, asp.net, AWS, API calls, C#, Javascript, jQuery just to name the big ones!

What's next for Pyrple

Incorporating some sort of intellisense, especially one aimed at beginner Python programmers, is a future development goal for this project. We also wanted to make our website more mobile friendly but simply ran out of town to implement this.

Built With

Share this project:
×

Updates