Skip to content

Technology & Frameworks

Altansukh T edited this page May 11, 2021 · 3 revisions

Backend:

Frontend

Backend

Arduino & C++

Arduino is a cross platform applicational text editor for writing code in C++ which is a general purpose programming language used to develop systems, browsers, games and other. It supports different ways of programming. Procedural, object-oriented and functional to name a few. A highly flexible programming language.

For more extensive information about Arduino and more in-depth installation guide, please visit their homepage.

MQTT

Is a Transmission Control Protocol based Publish/Subscribe messaging protocol designed for lightweight communication done on the backend. It is designed for resolving low-bandwidth, high latency and unreliable networks that were traditionally communicating from machine to machine whereas now communicating through a central broker which is a software. More information can be found on MQTT website and Using MQTT with ElectronJS page on how MQTT was used for this project.

Smartcar shield platform

The Smartcar, is a vehicular educational platform, which enables the user to develop various robotic applications in an affordable, pedagogic and easy way. It is intended for persons with basic programming knowledge and little to no experience of electronics, mechanics or robotics. More experienced users, should also find this approach convenient, due to its open source nature, high level API and object oriented design. For more extensive information about this platform, please visit Smartcar shield repository.

SMCE-gd

Official frontend for libSMCE using Godot. It was created to emulate cars supporting the Smartcar shield platform. It can compile and run Arduino sketches coded in C++. Furthermore, it is being extended to accept terrain and car model mods for greater customization. You can check out the most recent version on the SMCE-gd repository.

PostgreSQL

PostgreSQL is a powerful, open source object-relational database system with over 30 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance. There is a wealth of information to be found describing how to install and use PostgreSQL through the official documentation.

Godot Engine

Godot provides a huge set of common tools, so you can just focus on making your game without reinventing the wheel. Godot is completely free and open-source under the very permissive MIT license. No strings attached, no royalties, nothing. Your game is yours, down to the last line of engine code.

We have used Godot engine to create our mod of the Martian terrain featuring Jezero Crater which is the Perseverance Rover landing site. More information can be found at Godot website.

Frontend

Electron

Helps with developing cross-platform applications by using existing web technologies. Often times considered both frontend and backend characteristics gathered into a single desktop application. More information can be found on their startup guide.

Bootstrap

Bootstrap, the world’s most popular front-end open source toolkit, featuring Sass variables and mixins, responsive grid system, extensive prebuilt components, and powerful JavaScript plugins. More information can be found on their Getting started guide.

HTML

Is a set of markup symbols or codes inserted into a file intended for display on the internet. The markup indicates to the web browser how and where to display a web page's words and images. It helps with design, formatting and display of content on web pages. Information on most recent HTML5 specification can be found on W3C website.

Cascading Style Sheets(CSS)

Is a language for describing the presentation of web pages concerned with colors, layout and fonts. It enables for adaptation of presentation for different types of devices independent of screen sizes. Works independent to HTML and can be used in combination with any XML-based markup language. Information on most recent CSS specification can be found on W3C website.

JavaScript

Is a text based programming language used for both on the client-side and server-side that allows you to make web pages interactive whereas HTML and CSS are languages that provide structure and style to web pages. On the contrary JavaScript gives web pages interactive elements that engage a user. It can be considered both frontend and backend due to its flexible and diversified usage.

Leaflet

Leaflet is the leading open-source JavaScript library for mobile-friendly interactive maps. Weighing just about 39 KB of JS, it has all the mapping features most developers ever need. Leaflet is designed with simplicity, performance and usability in mind. It works efficiently across all major desktop and mobile platforms, can be extended with lots of plugins, has a beautiful, easy to use and well-documented API and a simple, readable source code that is a joy to contribute to.

jQuery

jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML document traversal and manipulation, event handling, animation, and Ajax much simpler with an easy-to-use API that works across a multitude of browsers. With a combination of versatility and extensibility, jQuery has changed the way that millions of people write JavaScript. For more information, please visit jQuery website.