forked from ZareBonds/smmlanding.github.io
-
Notifications
You must be signed in to change notification settings - Fork 0
Contributing
Chen Wang edited this page Oct 2, 2026
·
2 revisions
SMM is built on open-source libraries and algorithms, is fully open source, and welcomes contributions of any kind. You can fork any of the repositories, open issues, and create pull requests. To discuss larger ideas or collaborations first, email smm@lists.illinois.edu.
- Run it locally. There is no hosted instance anymore (the SMILE Playground and NCSA deployments are offline), so follow Run SMILE with Docker Compose to bring up the full stack on your machine. Then use it end to end, from collecting data, through analysis, to exporting results, to get a feel for the workflow.
- Pick a repository.
| Repository | What's in it | Language |
|---|---|---|
| standalone-smm-smile | SMILE web server and UI, including the analysis config files | Node.js (Express, Pug) |
| standalone-smm-smile-graphql | GraphQL data server for the social media platform APIs | Node.js |
| standalone-smm-analytics | Analysis algorithms, one container each | Python |
| smm-deployment | Docker Compose files and Helm chart | YAML |
| standalone-smm-landing | Landing page and this wiki | HTML/CSS |
SMILE currently offers sentiment analysis, NLP preprocessing, topic modeling, automated phrase mining (AutoPhrase), named entity recognition, text classification, and network analysis. You can:
- bring a new analysis, ideally in Python, although any language that runs in a container works;
- add an alternative algorithm or improved method to one of the existing analyses.
Start with Adding a New Analysis to SMILE. The Analysis Config File Reference and SMILE Endpoints pages are useful alongside it.
Data collection goes through the GraphQL data server. A new source involves working out:
- how the platform authenticates and authorizes third-party apps;
- what its data looks like;
- the platform's policies on data collection and ownership;
- a GraphQL schema for it in standalone-smm-smile-graphql.
- UI/UX design of the SMILE interface and the landing page.
- Testing and monitoring.
- Deployment: improving the Docker Compose and Helm setups, and running SMILE on other cloud or on-premises platforms.
- Integrations with other analytics services and tools.
- Documentation: this wiki is editable by collaborators. Fixes and new pages are welcome.
- Community engagement: helping researchers discover the tools, and defining standards and workflows for bringing in new data sources and algorithms.
Using SMILE
Running SMILE
Developing SMILE