Skip to content

OpenStata is an in-browser replication of the basic functionality of the proprietary statistical software Stata.

Notifications You must be signed in to change notification settings

dartmouth-cs52-20X/openstata

Repository files navigation

Open Stata

What is Open Stata?

Open Stata is an in-browser replication of the basic functionality of the proprietary statistical software Stata, combined with free tutorials and sample datasets to get anyone started with learning it.

Architecture

Frontend

  • UI Styling: CSS and Material-UI
  • Frontend structure: React
  • Frontend state management: Redux
  • API calls: Axios
  • Authentication: jwt

Backend

  • Platform: Node/Express
  • Parser generator: Nearley.js
  • Microservice HTTP calls: Axios
  • Database: MongoDB and Mongoose
  • Persistent data file storage: S3
  • Authentication: Passport.js

Statistics Microservice

  • Platform: Flask
  • Statistics: econtools, pandas.

Demo

Landing Page and Login

Edit and run a do-file

Tutorials and log files

Uploading and describing your own dataset

Changing password

Setup

To get the frontend running, just do yarn to install packages, then yarn start.

Deployment

Frontend: Netlify https://open-stata.netlify.app/

Backend: Heroku https://open-stata.herokuapp.com/

Backend Microservice: Heroku https://open-stata-other-api.herokuapp.com/

Authors

Jared Cole Jared Cole Arjun Srinivasan Arjun Srinivasan Jeff Liu Jeff Liu
Jack Keane Jack Keane Val Werner Val Werner Chris Sykes Chris Sykes

Acknowledgments

The CS52 Teaching team!

About

OpenStata is an in-browser replication of the basic functionality of the proprietary statistical software Stata.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published