Skip to content
/ project-template Public template
forked from yy/project-template

A template for research repositories

License

Notifications You must be signed in to change notification settings

smccoy10/project-template

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project template

A simple template for research project repos. You can also use data science and reproducible science cookie cutters.

Installation

Run the following

./install.sh PATH_TO_YOUR_PROJECT_REPO

For instance,

./install.sh ../my_project/

This script creates the following folders and files.

  1. data for raw & derived datasets.
  2. libs for librares for the project.
  3. models for trained models.
  4. notebooks for (timestamped) experiment notebooks.
  5. paper for manuscripts.
  6. results for results (figures, tables, etc.)
  7. workflow for workflow files and scripts.
  8. .gitignore for temporary and binary files to be ignored by git (LaTeX, Python, Jupyter, data files, etc.)

Using Python virtual environment

Change the PROJ_NAME variable in Makefile to your project name. Then create a virtual environment either with Python's vanilla virtualenv module or with Anaconda. You can also use tools like poetry.

with virtualenv

Running the following will create a virtual environment inside PROJNAME_env directory:

make create_env

You can activate the virtual environment by running

source PROJNAME-env/bin/activate

and deactivate by

deactivate

After activating the virtual environment, you can run

pip3 install -r requirements.txt
make create_ipykernel

to install basic packages and create the ipykernel for Jupyter. Use pip to install packages.

Anaconda

First create a virtual environment for the project.

make create_conda_env

and activate it with

conda activate PROJNAME

or deactivate it with

conda deactivate

Use conda install to install packages. Thanks to nb_conda package, you don't need to individually install ipykernel for Jupyter.

Using a project package

For the project package, use pip install -e command to install it as an "editable" package that does not require reinstallation after changes.

About

A template for research repositories

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TeX 58.0%
  • Makefile 24.6%
  • Python 16.7%
  • Shell 0.7%