Skip to content

A cross-platform app that assists remote Computer Science education by bridging the gap between pen-and-paper coding and coding on a computer

License

Notifications You must be signed in to change notification settings

code-capture/CodeCapture-Xamarin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CodeCapture

CodeCapture-Banner

About CodeCapture

CodeCapture is a cross-platform app that aims to assist remote learning experiences in Computer Science for students without computers by taking code from paper to mobile. CodeCapture has the functionality to extract code (C++, Java, JavaScript, or Python) from images of handwritten text and then allow the user to edit, compile, and share the result via email/SMS. We also have various lessons on C++ (more languages coming soon) to assist with students' Computer Science education especially in times like these, where the COVID-19 pandemic and enforced lockdown have kept students away from school.

Try the Android version by downloading the APK file from here

Check out the demo video of the application here on YouTube

CodeCapture was featured in the Student Showcase at .NET Conf 2020

Inspiration

While in recent times, the world has started moving towards pro-CS education, the fact is that buying computers is a distant dream for most students and educational institutions across the globe even today. In most developing countries, the ratio of CS students versus the number of computers available is highly skewed and most students are still learning programming via pen-and-paper. At the same time, however, the number of people who own mobile phones has significantly increased. Bridging this gap between pen-and-paper coding and coding on a computer by using a technology that people already own can bring a significant difference in the adoption of Computer Science education today.

Technologies Used

  • Application: Xamarin.Forms (C#, XAML, .NET)
  • Extracting Code: Azure Computer Vision (Read API)
  • Compiling Code: JDoodle Compiler API
  • Result SMS: Twilio Programmable SMS

Dependencies

The following NuGet packages are necessary to build and run this project:

Steps To Run

Please follow the following steps to run the project in Visual Studio Community 2019

  1. Clone the repository to a location of your preference

  2. Open the project in Visual Studio 2019 by clicking on CodeCapture.sln

  3. Install all the dependencies mentioned above using the NuGet Package Manager

  4. Go to the location ../CodeCapture/CodeCapture/Models and create a Secrets.cs file based on the template in the Readme.md file (For more information on how to create the resources for Azure Computer Vision Read API and JDoodle Compiler API, scroll below)

  5. Build the project

  6. Run and enjoy :)

UI Of The Application

MainPage AboutUs LessonsMenu LessonView
Starting Page About Us Lessons Menu Lesson View
PracticeView ImageCapture ExtractText CompileCode
Practice View Capturing Image Extracting Code Displaying Output

The application consists of the various Content Pages that the user sees when they use the app. You can check out the demo video of the app here too.

Future Plans

We do have various plans for the future, such as:

  1. Gamifying the progress for users
  2. Support for more languages
  3. Custom lessons on more technologies
  4. A web-based learning platform designed for educators
  5. Improvements in UI

Special Credits

Special thanks to Aman Dhattarwal for the amazing C++ Course he has published on YouTube, which we have utilised in the application.