This repository was archived by the owner on Feb 24, 2026. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 1
Iridescent Ivies #17
Open
janine9vn
wants to merge
145
commits into
main
Choose a base branch
from
iridescent-ivies
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Iridescent Ivies #17
Changes from all commits
Commits
Show all changes
145 commits
Select commit
Hold shift + click to select a range
fa06cb6
Initial commit
A5rocks 78cab9a
feat: example on how to use pyodide in our repo
DannyTheHeretic 60a4853
Setup basic environment
A5rocks 63da9b8
Merge pull request #11 from A5rocks/update-docs
giplgwm a1212ac
Tokenize things
A5rocks 1ff603a
Remove EOF tokens
A5rocks 9f6a220
script python to send request with authentication & add atproto to re…
Drakariboo a2c2bc8
feat: requests based implementation of atproto session
DannyTheHeretic bcacb08
lint: linting the auth requests
DannyTheHeretic a675095
feat: added feeds
DannyTheHeretic 3df61a9
feat: add retro terminal ui interface
Walkercito 7a6691c
edit: credits on the CRT effect
Walkercito 36d4a03
feat: added the pyfetch session
DannyTheHeretic e893104
lint: making the linter happy
DannyTheHeretic 93e71ea
feat: adding proper async await for the bskysession
DannyTheHeretic d660c75
Create a basic parser
A5rocks 0c57e63
Start parsing where clauses
A5rocks 37346f9
Fix strings
A5rocks 90a6911
fix: lint errors
Walkercito 2442055
fix(boot): load core modules in background
Walkercito 74d6b10
edit: lint errors
Walkercito 7b4d345
feat: js migration to py
Walkercito c11ee42
fix: f lint
Walkercito fd03e06
feat: adding functions and setup script
DannyTheHeretic 7c799ed
fix: fixing the clear_interface
DannyTheHeretic 2cbe07a
fix: Using the frontend.py update table in our example function
DannyTheHeretic ce6a40b
feat: make the tables able to load all and flatten dict
DannyTheHeretic 6c4c27a
fix: make the tables actually load the dict fields
DannyTheHeretic bb1f2ff
Merge pull request #15 from A5rocks/sql-parser
A5rocks 97f7316
fix: removed the lists from flattener
DannyTheHeretic b47e4f4
fix: gitignore had functions.py in it ??
DannyTheHeretic 80336b6
fix: reverted the show_boot param in index
DannyTheHeretic 31a9a52
fix: changed stat_type to a Literal for update_status
DannyTheHeretic 5d1ef58
Allow parsing underscores in identifiers
A5rocks ecd677c
Merge pull request #22 from A5rocks/fix-underscore-identifiers
A5rocks 39a2256
Implement AND, ints, and > / <
A5rocks f45db16
feat: added the extractors for the functions
DannyTheHeretic 7741779
fix: fixing the things in comments
DannyTheHeretic ef869d8
clean: removed frontend.js
DannyTheHeretic 6d4549e
ign: lint throwing a fit about parser
DannyTheHeretic 2173896
Merge pull request #20 from A5rocks/py-conversion
DannyTheHeretic 3b2eb07
fix: lint issue fir the parser
DannyTheHeretic ed10e20
Merge branch 'main' into fetcher
DannyTheHeretic 0160b57
fix: Fixing a var name and a TODO stmt
DannyTheHeretic e03c273
fix: fixing for the removed frontend.js
DannyTheHeretic 2fce7c4
fix: added frontend exposed thru functions
DannyTheHeretic 17a1988
Merge pull request #23 from A5rocks/expanded-where
A5rocks 113ca45
Merge pull request #25 from A5rocks/fetcher
DannyTheHeretic c6e1884
feat: add bluesky auth modal
Walkercito a714dfa
fix: lint...
Walkercito 58b218e
Merge pull request #16 from A5rocks/auth-request
DannyTheHeretic a0558a0
Merge pull request #26 from A5rocks/login-modal
A5rocks bab0da2
feat: adding the hooks thru modal and session
DannyTheHeretic 4d4783d
feat: added the timeline and login hooks
DannyTheHeretic ab34bd9
feat: orginized the api hooks to be in order
DannyTheHeretic 0a8f157
feat: added everything but 'chats'
DannyTheHeretic d65263d
Set empty BskySession in stealth mode to avoid errors in functions th…
giplgwm 4eb45b8
feat: cleaning some stuff up
DannyTheHeretic 4d9990f
Merge branch 'added-login-hooks' of https://github.com/A5rocks/code-j…
DannyTheHeretic 6015188
feat: started on the image handling to ascii
DannyTheHeretic 4d782c3
lint: requirements.txt
DannyTheHeretic 65a5d86
lint: fix requirements
DannyTheHeretic 2b6f1ff
extract embedded image links from posts and send to frontend
giplgwm fe4928d
Merge pull request #28 from A5rocks/added-login-hooks
DannyTheHeretic 1726066
fix: linting
giplgwm cfd7b08
feat: started on the sql to api layer
DannyTheHeretic be33db4
feat: added get blob, it returns the blob url based on bsky url
DannyTheHeretic d55e8b8
feat: ascii images from bsky image links
giplgwm 522678c
feat: handle table, on missing values return timeline
DannyTheHeretic 2499e60
clean: removed debug stmts
DannyTheHeretic 63367fc
lint: fix pre-commit errors
giplgwm 5f1cb7a
fix incorrect function name in async_show_image_modal
giplgwm fa01055
feat: handle alt text (when available) and link to the full size image
giplgwm 561a440
fix: added error handling and clear table to failure
DannyTheHeretic 5c2645e
Add empty field if no photos are found to avoid KeyError if using pho…
giplgwm cc99ceb
clean: cleaned up some of the code
DannyTheHeretic b7a78bf
feat: clean up async_show_image_modal
giplgwm cc1420a
Merge branch 'image-handling' of https://github.com/A5rocks/code-jam-…
DannyTheHeretic 2a6d9e9
feat: added some styling
DannyTheHeretic 3590597
feat: poor mans cache with dictionary
DannyTheHeretic ff36baf
Add favicon.png
giplgwm 925ddce
pull image extraction into a function to avoid duplicate code
giplgwm 59c1465
move image link handling into its own function
giplgwm fba4ed2
Handle failed logins
giplgwm b8c0431
fix: move the favicon to src folder
DannyTheHeretic 57fdd1e
Merge branch 'main' into image-handling
DannyTheHeretic 92e9cfd
lint: fixing lint
DannyTheHeretic efe2b2b
feat: added random endpoints to sql-2-api
DannyTheHeretic 834b23d
lint: cleaning some funcs up
DannyTheHeretic 98b3d3b
Merge pull request #32 from A5rocks/login-error
DannyTheHeretic f4d4350
Merge pull request #31 from A5rocks/favicon
DannyTheHeretic 4c065fa
Merge pull request #29 from A5rocks/image-handling
DannyTheHeretic 2aa28cf
Merge branch 'main' into sql-2-api
DannyTheHeretic 226419d
lint: cleaning the branch
DannyTheHeretic 52b7f8b
Merge pull request #30 from A5rocks/sql-2-api
DannyTheHeretic 3eb8406
feat: add drop easter egg
Walkercito 58f461b
add: ctr on/off button
Walkercito f854e0a
edit: bug fixes and debug
Walkercito a814a19
edit: better post handling
Walkercito c3c7bb8
fix: profile fix
Walkercito d0b871c
fix: where clause fix
Walkercito 9cfbb21
fix: lint errors
Walkercito 55b3ee8
edit: typo of mine
Walkercito e1f88fa
fix: no more console.log plain text passwords
DannyTheHeretic b7294bf
Merge pull request #33 from A5rocks/easter-eggs
Walkercito 74aa20b
feat: maassive file re-struct
Walkercito 814b373
lint?
Walkercito 13dc8aa
style: added a little bit of restructuring and linting
DannyTheHeretic 08f963b
Merge branch 'file-struct' of https://github.com/A5Rocks/code-jam-12 …
DannyTheHeretic 2af23db
fix: quick fix for where actors is broken switching to where actor
DannyTheHeretic 974129b
feat: orginizing stuff now
DannyTheHeretic fca25bc
Merge pull request #35 from A5rocks/where-broke
DannyTheHeretic 8da23eb
feat: added getting feeds, and changed it to accept author and actor …
DannyTheHeretic 3f995ae
fix: fixing feeds
DannyTheHeretic 418896c
lint: ruff linter
DannyTheHeretic 1c35970
Merge pull request #34 from A5rocks/file-struct
A5rocks 988fbc7
Parse LIMIT clauses
A5rocks 0110c33
feat: select * from tables
DannyTheHeretic f2626bf
fix: cleaned up some old stuff
DannyTheHeretic 5471d15
fix: cleaning up tables
DannyTheHeretic aa71dc5
Merge pull request #38 from A5rocks/tables-main
A5rocks 27e51c6
Implement LIMIT in API calls
A5rocks 78432d8
Simplify defaulting limit
A5rocks 3051e1e
feat: default limit values
DannyTheHeretic ab84803
Merge pull request #37 from A5rocks/parse-limit
A5rocks d4ea78f
Start showing query parse errors
A5rocks ba628e4
Merge pull request #39 from A5rocks/show-errors
Walkercito 7262711
fix: easter bug
Walkercito 5e239c4
lint
Walkercito 184d34e
Merge pull request #40 from A5rocks/fix-easter-egg
Walkercito 923bb6d
Beginning of documentation
giplgwm 95e50ca
update
Walkercito 69f1326
scrolling
Walkercito d32ff85
req
Walkercito 09ff220
python3
Walkercito 7142cf8
add assets folder for storing GIFs for visual examples
Drakariboo d812018
fixes
Walkercito 93c11a5
changes :D
Walkercito 88554d8
Update README.md
DannyTheHeretic e07a158
likes
Walkercito e3d78ae
lint: fixed linter
DannyTheHeretic 7a6405b
PR review
A5rocks b8f440d
Fix note admonition
A5rocks 9257b73
Merge pull request #41 from A5rocks/docs
A5rocks d4a0539
Add 'iridescent-ivies/' from commit '9257b737610868357598e0a7c88d932d…
janine9vn File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,35 @@ | ||
| # GitHub Action workflow enforcing our code style. | ||
|
|
||
| name: Lint | ||
|
|
||
| # Trigger the workflow on both push (to the main repository, on the main branch) | ||
| # and pull requests (against the main repository, but from any repo, from any branch). | ||
| on: | ||
| push: | ||
| branches: | ||
| - main | ||
| pull_request: | ||
|
|
||
| # Brand new concurrency setting! This ensures that not more than one run can be triggered for the same commit. | ||
| # It is useful for pull requests coming from the main repository since both triggers will match. | ||
| concurrency: lint-${{ github.sha }} | ||
|
|
||
| jobs: | ||
| lint: | ||
| runs-on: ubuntu-latest | ||
|
|
||
| env: | ||
| # The Python version your project uses. Feel free to change this if required. | ||
| PYTHON_VERSION: "3.12" | ||
|
|
||
| steps: | ||
| - name: Checkout repository | ||
| uses: actions/checkout@v4 | ||
|
|
||
| - name: Set up Python ${{ env.PYTHON_VERSION }} | ||
| uses: actions/setup-python@v5 | ||
| with: | ||
| python-version: ${{ env.PYTHON_VERSION }} | ||
|
|
||
| - name: Run pre-commit hooks | ||
| uses: pre-commit/action@v3.0.1 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,32 @@ | ||
| # Files generated by the interpreter | ||
| __pycache__/ | ||
| *.py[cod] | ||
|
|
||
| # Environment specific | ||
| .venv | ||
| venv | ||
| .env | ||
| env | ||
|
|
||
| # Unittest reports | ||
| .coverage* | ||
|
|
||
| # Logs | ||
| *.log | ||
|
|
||
| # PyEnv version selector | ||
| .python-version | ||
|
|
||
| # Built objects | ||
| *.so | ||
| dist/ | ||
| build/ | ||
| uv.lock | ||
| # IDEs | ||
| # PyCharm | ||
| .idea/ | ||
| # VSCode | ||
| .vscode/ | ||
| # MacOS | ||
| .DS_Store | ||
| src/sql_bsky.egg-info/* |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,28 @@ | ||
| repos: | ||
| - repo: https://github.com/pre-commit/pre-commit-hooks | ||
| rev: v5.0.0 | ||
| hooks: | ||
| - id: check-toml | ||
| - id: check-yaml | ||
| - id: end-of-file-fixer | ||
| - id: trailing-whitespace | ||
| args: [--markdown-linebreak-ext=md] | ||
|
|
||
| - repo: https://github.com/astral-sh/ruff-pre-commit | ||
| rev: v0.12.2 | ||
| hooks: | ||
| - id: ruff-check | ||
| - id: ruff-format | ||
|
|
||
| - repo: https://github.com/astral-sh/uv-pre-commit | ||
| rev: 0.8.8 | ||
| hooks: | ||
| - id: pip-compile | ||
| args: [ | ||
| "--universal", | ||
| "--python-version=3.12", | ||
| "pyproject.toml", | ||
| "--group=dev", | ||
| "-o", | ||
| "requirements.txt" | ||
| ] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| Copyright 2021 Iridescent Ivies | ||
|
|
||
| Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: | ||
|
|
||
| The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. | ||
|
|
||
| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,131 @@ | ||
| ## The Social Query Language (SQL-BSky) | ||
|
|
||
| [](https://python.org) | ||
| [](https://bsky.app) | ||
| [](LICENSE.txt) | ||
| []() | ||
|
|
||
| A retro terminal-style SQL interface for querying the BlueSky social network. Experience social media through the lens of structured query language with authentic CRT visual effects. | ||
|
|
||
|  | ||
|
|
||
| ## Features | ||
|
|
||
| - **Dual Authentication**: Full BlueSky login or anonymous "stealth mode" | ||
| - **Public API Access**: Query public content without authentication | ||
| - **ASCII Art Images**: View embedded images as beautiful ASCII art | ||
| - **Real-time Validation**: Live SQL syntax checking as you type | ||
| - **Retro CRT Interface**: Authentic 1980s terminal experience with visual effects | ||
| - **Fast Performance**: Optimized queries with scrolling support | ||
| - **Easter Eggs**: Hidden surprises for the adventurous | ||
|
|
||
| ## Quick Start | ||
|
|
||
| ### Installation | ||
|
|
||
| 1. Clone the repository: | ||
| ```bash | ||
| git clone git@github.com:A5rocks/code-jam-12.git | ||
|
|
||
| # move to the dir | ||
| cd code-jam-12 | ||
| ``` | ||
| 2. Start the development server: | ||
| ```bash | ||
| python3 dev.py | ||
| ``` | ||
|
|
||
| 3. That's it! Open your browser to: [http://localhost:8000](http://localhost:8000) | ||
|
|
||
| ### First Steps | ||
|
|
||
| 1. **Choose Authentication Mode**: | ||
| - **Authenticated**: Login with BlueSky credentials for full access | ||
| - **Stealth Mode**: Browse public content anonymously | ||
|
|
||
| > [!NOTE] | ||
| > If the page is slow, try disabling the CRT effect at this point. | ||
|
|
||
| 2. **Try Your First Query**: | ||
| ```sql | ||
| SELECT * FROM tables | ||
| ``` | ||
|
|
||
|  | ||
|
|
||
| 3. **Explore Public Profiles**: | ||
| ```sql | ||
| SELECT * FROM profile WHERE actor = 'bsky.app' | ||
| ``` | ||
|
|
||
| ## Query Reference | ||
|
|
||
| ### Available Tables | ||
|
|
||
| | Table | Description | Auth Required | Parameters | | ||
| |-------|-------------|---------------|------------| | ||
| | `tables` | List all available tables | No | None | | ||
| | `profile` | User profile information | No | `actor` (optional) | | ||
| | `feed` | Posts from a specific user | No | `author` (required) | | ||
| | `timeline` | Your personal timeline | Yes | None | | ||
| | `suggestions` | Suggested users to follow | No | None | | ||
| | `suggested_feed` | Recommended feeds | No | None | | ||
| | `followers` | User's followers | No | `actor` (required) | | ||
| | `following` | Who user follows | No | `actor` (required) | | ||
| | `mutuals` | Mutual connections | No | `actor` (required) | | ||
| | `likes` | User's liked posts | Yes | `actor` (required) | | ||
|
|
||
| ### Example Queries | ||
|
|
||
| ```sql | ||
| SELECT * FROM feed WHERE author='bsky.app' | ||
| ``` | ||
| - This will get all fields from all posts from the author's feed | ||
|
|
||
| ```sql | ||
| SELECT description FROM followers WHERE author='bsky.app' | ||
| ``` | ||
| - This will get the bio of all followers of the author | ||
|
|
||
| ```sql | ||
| SELECT * FROM tables | ||
| ``` | ||
| - This will get all available table names | ||
|
|
||
| ## Known Issues | ||
|
|
||
| > [!WARNING] | ||
| > Please be aware of these current limitations before using the application. | ||
|
|
||
| > [!NOTE] | ||
| > Queries to non-existent tables or fields will return empty rows instead of proper error messages. | ||
|
|
||
| **Example:** | ||
| ```sql | ||
| -- Both of these return empty rows (same behavior) | ||
| SELECT likes FROM feed WHERE author = "bsky.app" | ||
| SELECT apples FROM feed WHERE author = "bsky.app" | ||
| ``` | ||
|
|
||
| ### KeyError in Feed Processing | ||
| > [!IMPORTANT] | ||
| > There's a known KeyError where the system looks for `"feeds"` but should be looking for `"feed"`. This is a human error we discovered after the Code Jam programming time had ended, so we weren't able to fix it, but we're aware of the issue and it may cause some like-table-related queries to fail unexpectedly. | ||
|
|
||
| ##### Table `likes` Not Functional | ||
| > [!CAUTION] | ||
| > The `likes` table is currently broken and behaves like a non-existent table. This is due to the KeyError | ||
| ## Team - Iridescent Ivies | ||
|
|
||
| - **A5rocks** - [GitHub](https://github.com/A5rocks) (Team Leader) | ||
| - **TheHeretic** - [GitHub](https://github.com/DannyTheHeretic) | ||
| - **Walkercito** - [GitHub](https://github.com/Walkercito) | ||
| - **Joshdtbx** - [GitHub](https://github.com/giplgwm) | ||
| - **Mimic** - [GitHub](https://github.com/Drakariboo) | ||
|
|
||
| ## License | ||
|
|
||
| This project is licensed under the MIT License - see the [LICENSE.txt](LICENSE.txt) file for details. | ||
|
|
||
| --- | ||
|
|
||
| **Thank you for exploring our project!!** |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Good simple entrypoint script, makes it very convenient to run. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,29 @@ | ||
| import http.server | ||
| import os | ||
| import socketserver | ||
| import sys | ||
| from pathlib import Path | ||
|
|
||
| # use src as start point | ||
| src_dir = Path(__file__).parent / "src" | ||
| if src_dir.exists(): | ||
| os.chdir(src_dir) | ||
| print(f"[*] Serving from: {src_dir.absolute()}") | ||
| else: | ||
| print("[-] src/ dir not found") | ||
| sys.exit(1) | ||
|
|
||
| PORT = 8000 | ||
| Handler = http.server.SimpleHTTPRequestHandler | ||
|
|
||
| try: | ||
| with socketserver.TCPServer(("", PORT), Handler) as httpd: | ||
| print(f"[*] Server running at: http://localhost:{PORT}") | ||
| print(f"[*] Open: http://localhost:{PORT}/") | ||
| print("[-] Press Ctrl+C to stop") | ||
| httpd.serve_forever() | ||
| except KeyboardInterrupt: | ||
| print("\nServer stopped") | ||
| except OSError as e: | ||
| print(f"[-] Error: {e}") | ||
| print("[-] Try a different port: python dev.py --port 8001") | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Not super important, but seems like specifying the port wasn't implemented? |
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,54 @@ | ||||||||||||||||||||||||||||
| [project] | ||||||||||||||||||||||||||||
| name = "sql-bsky" | ||||||||||||||||||||||||||||
| description = "Social query language" | ||||||||||||||||||||||||||||
| version = "0.1.0" | ||||||||||||||||||||||||||||
| readme = "README.md" | ||||||||||||||||||||||||||||
| requires-python = ">=3.12" | ||||||||||||||||||||||||||||
| dependencies = [ | ||||||||||||||||||||||||||||
| "ascii-magic>=2.3.0", | ||||||||||||||||||||||||||||
| ] | ||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||
| [dependency-groups] | ||||||||||||||||||||||||||||
| dev = [ | ||||||||||||||||||||||||||||
| "pre-commit~=4.2.0", | ||||||||||||||||||||||||||||
| "ruff~=0.12.2", | ||||||||||||||||||||||||||||
| "pytest", | ||||||||||||||||||||||||||||
|
Comment on lines
+11
to
+15
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It's good to include these here for type checking in the IDE.
Suggested change
|
||||||||||||||||||||||||||||
| ] | ||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||
| [tool.ruff] | ||||||||||||||||||||||||||||
| line-length = 119 | ||||||||||||||||||||||||||||
| target-version = "py312" | ||||||||||||||||||||||||||||
| fix = true | ||||||||||||||||||||||||||||
| src = ["src"] | ||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||
| [tool.ruff.lint] | ||||||||||||||||||||||||||||
| # Enable all linting rules. | ||||||||||||||||||||||||||||
| select = ["ALL"] | ||||||||||||||||||||||||||||
| # Ignore some of the most obnoxious linting errors. | ||||||||||||||||||||||||||||
| ignore = [ | ||||||||||||||||||||||||||||
| # Missing docstrings. | ||||||||||||||||||||||||||||
| "D100", | ||||||||||||||||||||||||||||
| "D104", | ||||||||||||||||||||||||||||
| "D105", | ||||||||||||||||||||||||||||
| "D106", | ||||||||||||||||||||||||||||
| "D107", | ||||||||||||||||||||||||||||
| # Docstring whitespace. | ||||||||||||||||||||||||||||
| "D203", | ||||||||||||||||||||||||||||
| "D213", | ||||||||||||||||||||||||||||
| # Docstring punctuation. | ||||||||||||||||||||||||||||
| "D415", | ||||||||||||||||||||||||||||
| # Docstring quotes. | ||||||||||||||||||||||||||||
| "D301", | ||||||||||||||||||||||||||||
| # Builtins. | ||||||||||||||||||||||||||||
| "A", | ||||||||||||||||||||||||||||
| # Print statements. | ||||||||||||||||||||||||||||
| "T20", | ||||||||||||||||||||||||||||
| # TODOs. | ||||||||||||||||||||||||||||
| "TD002", | ||||||||||||||||||||||||||||
| "TD003", | ||||||||||||||||||||||||||||
| "FIX", | ||||||||||||||||||||||||||||
| # Conflicts with ruff format. | ||||||||||||||||||||||||||||
| "COM812", | ||||||||||||||||||||||||||||
| # Asserts are good, actually. | ||||||||||||||||||||||||||||
| "S101", | ||||||||||||||||||||||||||||
| ] | ||||||||||||||||||||||||||||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,40 @@ | ||
| # This file was autogenerated by uv via the following command: | ||
| # uv pip compile --universal --python-version=3.12 pyproject.toml --group=dev -o requirements.txt | ||
| ascii-magic==2.3.0 | ||
| # via sql-bsky (pyproject.toml) | ||
| cfgv==3.4.0 | ||
| # via pre-commit | ||
| colorama==0.4.6 | ||
| # via | ||
| # ascii-magic | ||
| # pytest | ||
| distlib==0.4.0 | ||
| # via virtualenv | ||
| filelock==3.18.0 | ||
| # via virtualenv | ||
| identify==2.6.12 | ||
| # via pre-commit | ||
| iniconfig==2.1.0 | ||
| # via pytest | ||
| nodeenv==1.9.1 | ||
| # via pre-commit | ||
| packaging==25.0 | ||
| # via pytest | ||
| pillow==11.3.0 | ||
| # via ascii-magic | ||
| platformdirs==4.3.8 | ||
| # via virtualenv | ||
| pluggy==1.6.0 | ||
| # via pytest | ||
| pre-commit==4.2.0 | ||
| # via sql-bsky (pyproject.toml:dev) | ||
| pygments==2.19.2 | ||
| # via pytest | ||
| pytest==8.4.1 | ||
| # via sql-bsky (pyproject.toml:dev) | ||
| pyyaml==6.0.2 | ||
| # via pre-commit | ||
| ruff==0.12.8 | ||
| # via sql-bsky (pyproject.toml:dev) | ||
| virtualenv==20.33.1 | ||
| # via pre-commit |
Empty file.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| # The main portion of fetching and recieving from Bsky |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
:)