Coder Social home page Coder Social logo

wpilibsuite / frc-docs Goto Github PK

View Code? Open in Web Editor NEW
146.0 19.0 257.0 181.18 MB

Official FRC Documentation powered by Read the Docs

Home Page: https://docs.wpilib.org

License: Other

Makefile 0.69% Batchfile 0.79% Python 28.29% CSS 3.17% HTML 2.20% C++ 0.52% Java 0.85% JavaScript 63.50%
hacktoberfest

frc-docs's Introduction

Documentation Status CI Link Check

frc-docs

Welcome to frc-docs! This repository contains the various source articles for the frc-docs website. frc-docs is licensed under Creative Commons, with assets such as the FIRST logo under trademark and copyright of FIRST.

The website is available under the following domains, it is preferred to use the WPILib domain URL:

WPILib Mission

The WPILib Mission is to enable FIRST Robotics teams to focus on writing game-specific software rather than focusing on hardware details - "raise the floor, don't lower the ceiling". We work to enable teams with limited programming knowledge and/or mentor experience to be as successful as possible, while not hampering the abilities of teams with more advanced programming capabilities. We support Kit of Parts control system components directly in the library. We also strive to keep parity between major features of each language (Java, C++, and NI's LabVIEW), so that teams aren't at a disadvantage for choosing a specific programming language. WPILib is an open source project, licensed under the BSD 3-clause license. You can find a copy of the license here.

Contributing to frc-docs

We're happy to have you contributing to frc-docs, whether it's; writing articles, fixing code, new extensions, or adding translations!

All the information needed to contribute to frc-docs is located in the contributing section on frc-docs. Additionally, please ensure that all contributions follow the WPILib Code of Conduct.

frc-docs's People

Contributors

abidingabi avatar agasser avatar austinshalit avatar benjamin-antupit avatar bovlb avatar bryanyli avatar calcmogul avatar daltz333 avatar gerth2 avatar gold856 avatar itayziv avatar jasondaming avatar kevin-oconnor avatar leongmichael avatar mcm001 avatar modelmat avatar oblarg avatar ohowe1 avatar peterjohnson avatar piphi5 avatar prateekma avatar rshah713 avatar rzblue avatar sciencewhiz avatar smithomaster avatar starlight220 avatar thadhouse avatar thetriplev avatar virtuald avatar zhiquanyeo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

frc-docs's Issues

PIDSubsystem Clairifcation

In the article: https://frc-docs.readthedocs.io/en/develop/docs/software/commandbased/pid-subsystems-commands.html#using-a-pidsubsystem

The class with signature public class ShooterSubsystem extends SynchronousPIDSubsystem does not have a member m_shooter as referenced in the sample below the class, reporduced here:

// Spin up the shooter when the 'A' button is pressed
driverController.getButton(Button.kA.value)
    .whenPressed(new InstantCommand(m_shooter::enable, m_shooter));

What is m_shooter and where does enable come from?

Set standards on WPI supported hardware documentation

It needs to be decided on what documentation in terms of hardware is allowed. I can understand a vendor bias needs to be avoided as much as possible, but this may limit available docs for some commonly used equipment. Also, details regarding allowed images would be fantastic.

The current approach is, KOP equipment only (apart from conflicting documentation of third-party equipment that was on screensteps???).

As for images, any images taken locally or part of Creative Commons.

@Kevin-OConnor

Enable Linkcheck

I think it'll be beneficial in the long run to enable this check. It'll require some amount of configuration and tweaking to the docs to getting it run reliably (ignore anchor points in URLs, and ignore localhost URLs). Fortunately, Sphinx actually has linkcheck pretty well documented.

Pros: We know when a link will break.
Cons: All PRs will fail when a link breaks.

Build example code

We should build all of the code examples so that when something changes in WPILib, we know that the documentation needs to be updated. What is the best way to do this? Could we use the samples directory already in allwpilib and then as part of the build bring allwpilib in? I really have no idea what is best to do.

Java code tabs should be first

Java should be the first and default tab for all code blocks because it is the most popular language by a significant amount.

Add page detailing community resources

Since this is an excellent resource towards the the software and electronics components for FRC, it seems logical that it might also provide a stepping off point towards other community resources and assistance, particularly ones that provide real time (or quick) responses to individual questions, as this isn't something well suited to a static site.

Potential examples of resources that might be highlighted are the FRC Discord (particularly the #programming-discussion and #programming-help channels), Chief Delphi's Programming category, and The Compass Alliance's Call Center.

There would also likely need to be some sort of disclaimer on these.

Update all links where possible to https

As it says on the tin. We should check all the links in the project and see if any can be updated to https especially with all the work that has been done on that front recently.

"Binding a command to a joystick button" contains errors

The section Binding a command to a joystick button has a few flaws

  • The Joystick classes getButton() method is deprecated and only return a boolean of the state.
  • The XboxController classes getButton() method does not even exist.
  • Both the Joystick and XboxController classes enum Button is private

Taking these into account the code shown for binding appears to be incorrect. If these are features that will be added in the future this should likely be noted in the docs.

Reorganize TOCs

Current structure breaks topics between software, hardware, and networking. See PDF output.

Figure out a new nesting scheme for nested TOCs

Hardware Documentation Rewrite

The hardware section is severely poor. The images are unclear, the language is confusing, and other such problems. Unfortunately, I don't have quite the knowledge to rewrite these articles. Contributors welcome!

Specify dependency versions

Probably be a good idea to specify the exact dependency versions we want to use. That way nothing randomly breaks because of an unexpected update.

Enforce EOL @ EOF

We should enforce EOL @ EOF as part of the build process so we do not get commit noise.

(end of line @ end of file)

Add C++ examples

Some C++ code snippets/examples are missing throughout the docs. This is a result of the screensteps just not having some C++ snippets. Probably should get added at some point.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.