fprime

F´ - A flight software and embedded systems framework

https://github.com/nasa/fprime

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    44 of 205 committers (21.5%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (17.6%) to scientific vocabulary

Keywords

components cpp embedded embedded-systems flight flight-software fprime framework nasa object-oriented-programming raspberry-pi real-time spaceflight

Keywords from Contributors

cryptocurrencies trading-bot trade telegram-bot freqtrade algorithmic-trading parallel mesh whiteboxtools solara
Last synced: 4 months ago · JSON representation ·

Repository

F´ - A flight software and embedded systems framework

Basic Info
Statistics
  • Stars: 10,447
  • Watchers: 267
  • Forks: 1,408
  • Open Issues: 338
  • Releases: 34
Topics
components cpp embedded embedded-systems flight flight-software fprime framework nasa object-oriented-programming raspberry-pi real-time spaceflight
Created over 8 years ago · Last pushed 4 months ago
Metadata Files
Readme Contributing License Code of conduct Citation Security Governance

README.md

A Flight-Proven, Multi-Platform, Open-Source Flight Software Framework



F´ (F Prime) is a component-driven framework that enables rapid development and deployment of spaceflight and other embedded software applications. Originally developed at the Jet Propulsion Laboratory, F´ has been successfully deployed on several space applications. It is tailored but not limited to small-scale spaceflight systems such as CubeSats, SmallSats, and instruments.

Please Visit the F´ Website: https://fprime.jpl.nasa.gov for more information.

What does F´ provide

  • An architecture that decomposes flight software into discrete components with well-defined interfaces
  • A C++ framework that provides core capabilities such as message queues and threads
  • Modeling tools for specifying components and connections and automatically generating code
  • A growing collection of ready-to-use components
  • Testing tools for testing flight software at the unit and integration levels.

Learn more about F´ key features.

System Requirements

  1. Linux, Windows with WSL, or macOS operating system
  2. git
  3. Clang or GNU C and C++ compilers (e.g. gcc and g++)
  4. Python 3.9+, virtual environments, and PIP

Getting Started

To get started with F´, install the F´ bootstrapping tool with: pip install fprime-bootstrap

Then, create a new project with: fprime-bootstrap project

See the HelloWorld Tutorial to guide you through all the steps of developing an F´ project.

New users are encouraged to read through the User Manual and explore the other tutorials.

Getting Help

Discussions

To ask questions, discuss improvements, and ask for help please use the project's GitHub Discussions.

Bug reports

To report bugs and issues, open an issue here.

Community

The F´ Community GitHub Organization contains third party contributions, more documentation of flight software development, and additional resources.

Resources

Release Notes

The version history and artifacts associated with the project can be found at Releases.

Owner

  • Name: NASA
  • Login: nasa
  • Kind: organization
  • Email: nasa-data@lists.arc.nasa.gov
  • Location: United States of America

ReadOpen Data initiative here: https://www.nasa.gov/open/ & Instructions here: https://github.com/nasa/nasa.github.io/blob/master/docs/INSTRUCTIONS.md

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
  - name: "The F´ Framework Team"
title: "F´: A Flight-Proven, Multi-Platform, Open-Source Flight Software Framework"
url: "https://github.com/nasa/fprime"

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 4,449
  • Total Committers: 205
  • Avg Commits per committer: 21.702
  • Development Distribution Score (DDS): 0.723
Past Year
  • Commits: 264
  • Committers: 39
  • Avg Commits per committer: 6.769
  • Development Distribution Score (DDS): 0.697
Top Committers
Name Email Commits
Michael D Starch M****h@j****v 1,231
bocchino b****o@j****v 693
Josh Soref j****f 314
Timothy Canham t****m@j****v 228
koran k****n@j****v 216
Jake Deerin 2****o@g****m 161
Joshua Anderson j****n@j****v 124
Thomas Boyer-Chammard 4****c 107
Rohan Dhesikan r****n@g****m 88
jishii j****i@j****v 79
jishii j****i@g****v 75
Raymond J Paetz r****z@j****v 75
Josh Weadick w****k@u****u 74
jbiberst j****n@j****v 62
kevin-f-ortega k****a@g****m 54
hunterpaulson h****3@g****m 49
hpaulson h****n@j****v 44
Thibault 7****z 42
Joshua Weadick j****k@j****v 42
saba-ja s****3@m****u 37
Jordan Ishii j****i@j****v 35
Gene Merewether m****h@j****v 30
jhdeerin j****n@j****v 29
blakeh b****n@j****v 28
Santos F Fregoso s****o@j****v 19
Cel Skeggs c****s 16
Brian Campuzano B****o@j****v 15
Leonard J. Reder r****r@j****v 15
Simone Morettini m****6@g****m 15
zacharysarah z****h@c****m 15
and 175 more...

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 1,096
  • Total pull requests: 1,158
  • Average time to close issues: 5 months
  • Average time to close pull requests: 8 days
  • Total issue authors: 122
  • Total pull request authors: 80
  • Average comments per issue: 1.28
  • Average comments per pull request: 1.08
  • Merged pull requests: 917
  • Bot issues: 0
  • Bot pull requests: 11
Past Year
  • Issues: 573
  • Pull requests: 718
  • Average time to close issues: 27 days
  • Average time to close pull requests: 4 days
  • Issue authors: 60
  • Pull request authors: 46
  • Average comments per issue: 0.56
  • Average comments per pull request: 0.8
  • Merged pull requests: 551
  • Bot issues: 0
  • Bot pull requests: 9
Top Authors
Issue Authors
  • LeStarch (358)
  • thomas-bc (120)
  • timcanham (111)
  • zimri-leisher (63)
  • kevin-f-ortega (63)
  • celskeggs (41)
  • jwest115 (39)
  • bocchino (37)
  • ThibFrgsGmz (15)
  • kubiak-jpl (12)
  • rlcheng (10)
  • csmith608 (10)
  • ethancheez (9)
  • Joshua-Anderson (9)
  • rrieber (8)
Pull Request Authors
  • LeStarch (303)
  • thomas-bc (213)
  • m-aleem (85)
  • bocchino (74)
  • kevin-f-ortega (47)
  • celskeggs (37)
  • JohanBertrand (28)
  • timcanham (27)
  • vincewoo (24)
  • jwest115 (24)
  • zimri-leisher (22)
  • mosa11aei (14)
  • matt392code (13)
  • moisesmata (12)
  • ashleynilo (12)
Top Labels
Issue Labels
enhancement (557) bug (346) High Priority (72) Medium Priority (60) Documentation (53) F´ GDS (53) F´ Tools (46) ROSES (44) Easy First Issue (42) help wanted (32) cmake (30) need-to-reproduce (21) CI (20) Low Priority (14) EPIC (13) FPP (12) Tutorials (12) Website (8) Consistency (7) Technical Debt (6) Test API (5) ROSES - Student Review (5) Refactoring / Code Clarity (4) Breaking Changes (3) ROSES - Pattern (3) Update Instructions Needed (2) wontfix (2) needs investigation (2) duplicate (1) ROSES Candidate (1)
Pull Request Labels
Update Instructions Needed (33) enhancement (11) dependencies (11) python (11) Documentation (7) Breaking Changes (7) ROSES (5) High Priority (1) Website (1) bug (1) Refactoring / Code Clarity (1)