36 releases

0.1.36 Jun 3, 2022
0.1.35 Mar 3, 2022
0.1.34 Sep 12, 2021
0.1.32 Jun 21, 2021
0.1.2 Jul 10, 2020

#2072 in Web programming

41 downloads per month
Used in 2 crates

Apache-2.0

46KB
974 lines

cio

cargo-build cargo-clippy cargo-test rustfmt cloud-run

Helper functions and types for doing the activities of a CIO.

Configuration

Runtime Flags

Specific runtime behaviors can be controlled via environment variables. Flags are disabled by default and setting the variable to true will enable the feature.

Flag Description
RFD_PDFS_IN_GITHUB Enables committing of rendered RFD PDFs back to their source repo
RFD_PDFS_IN_GOOGLE_DRIVE Enables writing of rendered RFD PDFs to Google Drive

The architecture for this application server and all it's surroundings is:

arch.png


lib.rs:

  • A rust library for interacting with the Airtable API.
  • For more information, the Airtable API is documented at airtable.com/api.
  • Example:
  • use airtable_api::{Airtable, Record};
  • use serde::{Deserialize, Serialize};
  • async fn get_records() {
  • // Initialize the Airtable client.
    
  • let airtable = Airtable::new_from_env();
    
  • // Get the current records from a table.
    
  • let mut records: Vec<Record<SomeFormat>> = airtable
    
  •     .list_records(
    
  •         "Table Name",
    
  •         "Grid view",
    
  •         vec!["the", "fields", "you", "want", "to", "return"],
    
  •     )
    
  •     .await
    
  •     .unwrap();
    
  • // Iterate over the records.
    
  • for (i, record) in records.clone().iter().enumerate() {
    
  •     println!("{} - {:?}", i, record);
    
  • }
    
  • }
  • #[derive(Debug, Clone, Serialize, Deserialize)]
  • pub struct SomeFormat {
  • pub x: bool,
    
  • }
  • 
    

Dependencies

~12–28MB
~364K SLoC