git
24 posts
-
Authenticate FastAPI endpoints with a GitHub organization
FastAPI is a framework that simplifies building APIs in Python. Authentication via Google, Github and many more is provided by FastAPI-SSO.
-
2-way synchronization of Overleaf and GitHub via a GitHub Action
Updated: 2025-02-20 In the past I wrote tutorials on how to handle Github and Overleaf, the latest for example is this. However the Github button in Overleaf is fragile, it often gets disconnected for unknown reasons, and it cannot be reconnected, it forces deletion of the Github repository. Moreover, it seems it is now a Premium feature. Finally, it needs to be triggered manually, and nobody remembers to do that.
-
Deploy GitHub Authenticator in JupyterHub
Updated June 2024: added more options to config file Quick reference on how to deploy the Github Authenticator in JupyterHub, the main reference is the Zero to JupyterHub docs.
-
Work on a LaTeX document in GitHub Codespaces
I was exploring using Github Codespaces instead of Overleaf to work on a Latex document. The most important missing component is the Latex editor, and the other downside is that it is free only for 90 hours per month (with a Pro academic account). However, the other useful features of Overleaf are present:
-
Work on a LaTeX document with GitHub and Overleaf
In the past I have written about coordinating a large document using multiple overleaf documents and Github repositories.
-
Build and host Singularity containers on GitHub
I present a demo repository configured to build Singularity containers using Github actions and then host them using the Github container registry:
-
Remove unique cell id from Jupyter Notebooks
I know! Jupyter is littering your git diff with randomly generated cell ids and nbstripout doesn't remove them, (I'm sure they are useful for some reason).
-
Access running GitHub Action with SSH
Sometimes Github actions are failing and it is difficult to reproduce the error locally, in particular if you have a different OS.
-
Workflow for Jupyter Notebooks under version control
I'll present here my strategy for keeping Jupyter Notebooks under version control. TLDR:
-
Coordinate a large Latex document with multiple Overleaf projects and Github
In case we need to build a large document (hundreds of pages) and we have a large number of collaborators (more than 50), it is convenient to have each section of the document be a different Overleaf project. Also, we don't want to rely on Overleaf only, we prefer backup of everything to Github.
-
Paper review workflow with Overleaf, git and Google Docs
In this blog post I propose a workflow to use the collaborative features of Google Docs to review a paper being written in Overleaf (unless you have Overleaf Pro which has change tracking embedded).
-
My own git cheatsheet
I noticed I always google the same procedures... Remove a file from a commit
-
Create a Github account for your research group with free private repositories
Github allows a research group to create their own webpage where they can host, share and develop their software using the git version control system and the powerful Github online issue-tracking interface.
-
Setup automated testing on a Github repository with Travis-ci
Start from the CUDA 8 image from NVIDIA: FROM nvidia/cuda:8.0-cudnn6-devel-ubuntu16.04
-
Setup automated testing on a Github repository with Travis-ci
It is good practice in software development to implement extensive testing of the codebase in order to catch quickly any bug introduced into the code when implementing new features.