Skip to content

green-code-initiative/creedengo-android-java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

910 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo

Creedengo Android Java

License: GPL v3

Creedengo is a collective project aiming to reduce the environmental footprint of software at the code level. This repository hosts the Android-focused plugin, originally released as ecoCode android and now branded as Creedengo Android Java.

It provides static code analyzers to highlight code structures that may have a negative ecological impact: energy over-consumption, "fatware", shortening devices' lifespan, etc.

The project is based on an evolving catalog of best practices for Android. A SonarQube plugin implements this catalog as rules for scanning native Android projects written in Java only.

Resources:

🌿 SonarQube plugin

Screenshot

The custom GUI above is reserved to educational purpose only.

This plugin targets:

  • Android Java source code
  • Android XML configurations
  • Gradle build files (Groovy)

🚀 Quickstart

A SonarQube container image with Creedengo Android Java embedded exists!

docker run -ti --rm \
       -v sq_creedengo_android_logs:/opt/sonarqube/logs \
       -v sq_creedengo_android_data:/opt/sonarqube/data \
       -p 9000:9000 \
       --name sonarqube-creedengo-android  \
       ghcr.io/green-code-initiative/sonarqube-creedengo-android:latest

Wait a little bit during first start initialization, and go to http://localhost:9000. Default credentials are admin/admin

🛒 Distribution

Ready to use binaries are available from GitHub.

🧩 Plugins version compatibility

Plugins Version SonarQube version
0.0.+ SonarQube 8.9.+ LTS to 9.3
0.1.+ SonarQube 9.4.+ LTS to 9.9
1.0.+ SonarQube 9.4.+ LTS to 9.9
1.1.+ SonarQube 9.4.+ LTS to 10.3

☕ Plugin Java part compatibility

Plugins Version Java version
0.0.+ 11 / 17
0.1.+ 11 / 17
1.0.+ 11 / 17
1.1.+ 11 / 17

🤝 Contributing

Have an idea or want to help? We welcome contributions. See CONTRIBUTING.md and the related guides.

🤝 Partners

Snapp’ Université de Pau Région Nouvelle-Aquitaine Solocal / PagesJaunes

📢 Cite this work

If you use Creedengo in an academic work we would be really glad if you cite our seminal paper using the following bibtex entry:

@inproceedings{10.1145/3551349.3559518,
  author = {Le Goaer, Olivier and Hertout, Julien},
  title = {Creedengo: A SonarQube Plugin to Remove Energy Smells from Android Projects},
  year = {2023},
  isbn = {9781450394758},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  url = {https://doi.org/10.1145/3551349.3559518},
  doi = {10.1145/3551349.3559518},
  booktitle = {37th IEEE/ACM International Conference on Automated Software Engineering},
  articleno = {157},
  numpages = {4},
  keywords = {android, energy, smells, debt, quality, battery},
  location = {Rochester, MI, USA},
  series = {ASE22}
}

About

Reduce the environmental footprint of your Java-based Android apps with SonarQube

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 

Contributors