Files
Firestore-Fastapi/flake.nix
2026-03-16 21:57:23 +01:00

46 lines
1.3 KiB
Nix

{
description = "FastAPI with Cloud Firestore development environment";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
};
outputs = { self, nixpkgs, flake-utils }:
flake-utils.lib.eachDefaultSystem (system:
let
pkgs = nixpkgs.legacyPackages.${system};
# Python with required packages
pythonEnv = pkgs.python312.withPackages (ps: with ps; [
fastapi
uvicorn
google-cloud-firestore
pydantic
python-dotenv
]);
in
{
devShells.default = pkgs.mkShell {
buildInputs = with pkgs; [
pythonEnv
git
curl
];
shellHook = ''
echo "FastAPI + Firestore development environment"
echo ""
echo "Python: $(python --version)"
echo "Packages: fastapi, uvicorn, google-cloud-firestore, pydantic"
echo ""
echo "Quick start:"
echo " 1. Place your serviceAccountKey.json in this directory"
echo " 2. Create main.py with your FastAPI app"
echo " 3. Run: uvicorn main:app --reload"
echo ""
'';
};
});
}