Category: Blog

  • Udacity-FrontEnd-web-developer-NanoDegree-Program

    Udacity Front-End Web Developer Nano-degree Program Project

    All Udacity FrontEnd Web Developer projects which are created by me with clean code

    Achieved Certificate

    Udacity Front End Nanodegree

    Udacity Front End Nanodegree

    ##Courses

    • HTML5
    • CSS & Website Layout- Introduction to HTML, Introduction to CSS, Introducing Flexbox, CSS Grid, Creating Responsive Layouts.
    • JavaScript & The DOM- Syntax, The Document Object Model, Creating Content with JavaScript, Working with Browser Events, Performance.
    • Web API’s & Asynchronous Applications- Node & Express Environment, HTTP Requests & Routes, Asynchronous JavaScript.
    • Build Tools, Webpack & Service Worker- Intro to Build Tools, Basics of Webpack, Sass and Webpack, Final Touches.
    • EXTRA’S- Intro to Computer Science, Responsive Web Design Fundamentals, Responsive Images, JavaScript Basics, Intro to JQuery, Object-Oriented JavaScript, HTML5 Canvas, Website Performance Optimization, Browser Rendering Optimization, Intro to AJAX, JavaScript Design Patterns, JavaScript Testing.
    • career services
    • Capstone (4 APIS used)

    ##Projects:-

    • P1 – Personal Web Blog
    • P2 – Landing Page
    • P3 – Weather Journal app
    • P4 – Evaluate a News Article with Natural Language
    • P5 – Improve your linkedin profile
    • P6 – Improve your github profile
    • P7 – FEND-Capstone-Travel-App

    ##Live URL’S:-

    Visit original content creator repository https://github.com/The-manpreet-singh/Udacity-FrontEnd-web-developer-NanoDegree-Program
  • arxiv-cli

    arXiv-CLI

    http://clickrabbit.top/wp-content/uploads/2025/08/arxiv-cli.svg http://clickrabbit.top/wp-content/uploads/2025/08/1756626365_15_badge.svg

    About

    A Python wrapper for the arXiv API.

    Install

    $ pip install arxiv-cli

    Usage

    You can use arXiv-CLI as a CLI to navigate arXiv or as a library to query its API.

    CLI

    Currently arXiv-CLI implements three subcommands:

    $ arxiv download [-t/--timeout seconds] IDS
    $ arxiv fetch [-t/--timeout seconds] IDS
    $ arxiv find [-i/--ids, -t/--timeout seconds] QUERY

    The first two commands accept a list of arXiv ids and, respectively, download the corresponding PDFs or display their metadata in JSON format.

    The third command runs a query against arXiv and prints the metadata in JSON format of the records that match. Adding the -i/--ids flag will return only their ids.

    Adding the -t/--timeout seconds option will sleep for that amount of seconds between successive requests to the arXiv API.

    Note that the previous commands can be chained, therefore running

    $ arxiv download $(arxiv find --ids QUERY)

    will download all papers that match QUERY, while

    $ arxiv fetch $(arxiv find --ids QUERY)

    will fetch all their metadata.

    API

    The previous CLI is built on top of a Python library that can be used on its own to query arXiv’s API. For example:

    >>> from arxiv_cli import Client
    >>> client = Client()
    >>> client.download([IDS])

    will achieve the same effect as

    $ arxiv download IDS

    Author

    Jacopo Notarstefano (@Jaconotar)

    License

    MIT

    Visit original content creator repository https://github.com/jacquerie/arxiv-cli
  • arxiv-cli

    arXiv-CLI

    http://clickrabbit.top/wp-content/uploads/2025/08/arxiv-cli.svg http://clickrabbit.top/wp-content/uploads/2025/08/1756626365_15_badge.svg

    About

    A Python wrapper for the arXiv API.

    Install

    $ pip install arxiv-cli

    Usage

    You can use arXiv-CLI as a CLI to navigate arXiv or as a library to query its API.

    CLI

    Currently arXiv-CLI implements three subcommands:

    $ arxiv download [-t/--timeout seconds] IDS
    $ arxiv fetch [-t/--timeout seconds] IDS
    $ arxiv find [-i/--ids, -t/--timeout seconds] QUERY

    The first two commands accept a list of arXiv ids and, respectively, download the corresponding PDFs or display their metadata in JSON format.

    The third command runs a query against arXiv and prints the metadata in JSON format of the records that match. Adding the -i/--ids flag will return only their ids.

    Adding the -t/--timeout seconds option will sleep for that amount of seconds between successive requests to the arXiv API.

    Note that the previous commands can be chained, therefore running

    $ arxiv download $(arxiv find --ids QUERY)

    will download all papers that match QUERY, while

    $ arxiv fetch $(arxiv find --ids QUERY)

    will fetch all their metadata.

    API

    The previous CLI is built on top of a Python library that can be used on its own to query arXiv’s API. For example:

    >>> from arxiv_cli import Client
    >>> client = Client()
    >>> client.download([IDS])

    will achieve the same effect as

    $ arxiv download IDS

    Author

    Jacopo Notarstefano (@Jaconotar)

    License

    MIT

    Visit original content creator repository https://github.com/jacquerie/arxiv-cli
  • perforce-commit-discord-bot

    Perforce Commit Logger Discord Bot πŸ—’οΈ ✏️

    Build Status Issues

    With this bot you’re able to keep track of commits made to a Perforce version control server within a Discord channel.

    Installation Steps πŸ’½

    1. Within your Discord server go to the settings for the channel you’d like the commit logs to be posted to and copy the webhook URL.
    2. Save the webhook URL as an environment variable called DISCORD_WEBHOOK_URL.
    3. The service requires access to the p4 changes command in the terminal, your bot should be installed somewhere where it can automatically perform this command without the session expiring. Once suitable access has been provided you’ll need to run $ pip install -r requirements.txt followed by $ python app.py to initialize it.
    4. Optionally you should consider creating a CRON script or something similar that restarts the app.py file on server reboot in order to keep the bot alive.

    Unit tests can be run using the $ python tests.py command.

    Getting Started ✈️

    Every thirty seconds the bot runs a Perforce command in the terminal that checks for the most recent changes. If it finds one it stores it in memory, if the change it finds is the same as the one it gathered previously then it discards it. You’ll need to provide the bot with access to your servers Perforce command line. One way of doing this is running the Python application on the server which hosts your Perforce instance. If you can type p4 changes yourself then the bot will be able to do its thing.

    Configuration πŸ“

    The installation will require you to enter a number of settings as environment variables. Below you’ll find an explanation of each.

    Key Value Information Required
    DISCORD_WEBHOOK_URL The Webhook URL for the Discord channel you’d like the bot to post its messages to. Yes

    Example

    Visit original content creator repository https://github.com/JamesIves/perforce-commit-discord-bot
  • devnull-web

    /DEV/NULL/NETHACK TRIBUTE CLAN MANAGEMENT

    This code started as an attempt at reimplementation of /dev/null/nethack’s
    central server code. With the tournament
    retirement
    by Krystal, this never came to fruition. Instead, this code was coopted
    for clan management of the replacement tournament — /dev/null/nethack
    Tribute and then the TNNT tournament. The tag ‘pre-tribute’ marks the last
    commit before this event.

    Note: TNNT got a new scoreboard, so this code is no longer maintained.

    ARCHITECTURE

    • Perl Dancer framework
    • SQLite as backend storage

    INSTALLATION

    Upgrade and configure CPAN.pm to bootstrap local::lib

    perl -MCPAN -e 'upgrade CPAN'
    

    Install required Perl modules

    perl -MCPAN -e 'install Syntax::Keyword::Try'
    perl -MCPAN -e 'install File::Touch'
    perl -MCPAN -e 'install App::Cmd::Setup'
    perl -MCPAN -e 'install Plack::Middleware::Deflater'
    perl -MCPAN -e 'install DBD::SQLite'
    perl -MCPAN -e 'install Dancer2'
    perl -MCPAN -e 'install Dancer2::Plugin::Database'
    perl -MCPAN -e 'install Dancer2::Session::Cookie'
    

    Clone the git repository.

    DEPLOYMENT

    For testing, you can fire up the application with Plack, just go into the
    Dancer app directory Devnull-Web and run:

    plackup -p 5000 bin/app.psgi
    

    Then just point your browser to http://your_ip:5000/

    For production deployment a suitable application web server is needed.
    start.sh and stop.sh scripts utilizing the
    Starman
    web server are provided. The main user-facing webserver needs to be
    configured as a reverse proxy for the application webserver. Example of
    Apache 2.4 config:

    <Location /devnull/clanmgmt/>
    ProxyPass         http://localhost:5000/
    ProxyPassReverse  /
    ProxyPreserveHost On
    </Location>
    

    AUTHOR

    You can contact me as Mandevil on FreeNode.

    Visit original content creator repository
    https://github.com/borekl/devnull-web

  • pychoir

    pychoir – Python Test Matchers for humans

    PyPI version PyPI Supported Python Versions GitHub Actions (Tests) Documentation Status License

    Super-duper low cognitive overhead matching for Python developers reading or writing tests. Implemented fully in modern & typed Python, without any dependencies. Runs and passes its tests on most Pythons after 3.6. PyPy works fine too.

    pychoir has mostly been developed for use with pytest, but nothing prevents from using it in any other test framework (like vanilla unittest) or even outside of testing, if you feel like it.

    Installation

    • With pip: pip install pychoir
    • With pipenv: pipenv install --dev pychoir
    • With poetry: poetry add --dev pychoir
    • With PDM: pdm add -dG test pychoir
    • With uv: uv add --dev pychoir

    Documentation

    Check out the API Reference on readthedocs for detailed info and examples of all the available Matchers https://pychoir.readthedocs.io/en/stable/api.html

    Why?

    You have probably written quite a few tests where you assert something like

    assert thing_under_test() == {'some_fields': 'some values'}

    However, sometimes you do not expect exact equivalence. So you start

    result = thing_under_test()
    
    result_number = result.pop('number', None)
    assert result_number is None or result_number < 3
    
    result_list_of_strings = result.pop('list_of_strings', None)
    assert (
        result_list_of_strings is not None
        and len(result_list_of_strings) == 5
        and all(isinstance(s, str) for s in result_list_of_strings)
    )
    
    assert result == {'some_fields': 'some values'}

    …but this is not very convenient for anyone in the long run.

    This is where pychoir comes in with matchers:

    from pychoir import LessThan, All, HasLength, IsNoneOr, IsInstance
    
    assert thing_under_test() == {
        'number': IsNoneOr(LessThan(3)),
        'list_of_strings': HasLength(5) & All(IsInstance(str)),
        'some_fields': 'some values',
    }

    It can also be cumbersome to check mocked calls without using matchers:

    assert mock.call_args[0][0] < 3
    assert isinstance(mock.call_args[0][1], str)
    assert len(mock.call_args[0][2]) == 3

    but simple and easy when using them:

    from pychoir import LessThan, IsInstance, HasLength
    
    mock.assert_called_with(LessThan(3), IsInstance(str), HasLength(3))

    You can also check many things about the same value: for example IsInstance(int) & 5 will make sure that the value is not only equal to 5, but is also an int (goodbye to accidental 5.0).

    You can place a matcher almost anywhere where a value can be. pychoir matchers work well inside lists, tuples, dicts, dataclasses, mock call assertions… You can also place normal values inside matchers, and they will match as with traditional == or !=.

    A core principle is that pychoir Matchers are composable and can be used freely in various combinations. For example [LessThan(3) | 5] is “equal to” a list with one item, holding a value equal to 5 or any value less than 3.

    Can I write custom Matchers of my own

    Yes, you can! pychoir Matcher baseclass has been designed to be usable by code outside the library. It also takes care of most of the generic plumbing, so your custom matcher typically needs very little code.

    Here is the implementation of IsInstance as an example:

    from typing import Any, Type
    from pychoir import Matcher
    
    class IsInstance(Matcher):
        def __init__(self, type_: Type[Any]):
            super().__init__()
            self.type = type_
    
        def _matches(self, other: Any) -> bool:
            return isinstance(other, self.type)
    
        def _description(self) -> str:
            return self.type.__name__

    All you need to take care of is defining the parameters (if any) in __init__(), the match itself in _matches(), and a description of the parameters in _description().

    Here is an even simpler Anything matcher that does not take parameters and matches literally anything:

    from typing import Any
    from pychoir import Matcher
    
    class Anything(Matcher):
        def _matches(self, _: Any) -> bool:
            return True
    
        def _description(self) -> str:
            return ''

    If your custom matcher is generic enough to be useful for everyone, please contribute (fork and make a pull request for now) and have it included in pychoir!

    Why not <X>?

    Nothing wrong with hamcrest as such, but pychoir aims to be better integrated with natural Python syntax, meaning for example that you do not need to use a custom assert function. pychoir matchers are drop-in replacements for your normal values alone or inside structures, even deeply nested ones. You can use hamcrest matchers through pychoir if you like, wrapping them in the Matches(my_hamcrest_matcher) matcher, although the idea is that pychoir would soon come with an equivalent set of matchers.

    What a nice fluent API for matching, allowing matching multiple things at once. However, you can only match one value at a time. With pychoir you’ll be matching the whole result at once, be it a single value, list, tuple, dict, dataclass, you name it. Let’s see if pychoir gets some of that fluent stuff going forward as well.

    ???

    I’d be happy to hear from you about other similar libraries.

    What is it based on?

    Python has a rather peculiar way of handling equivalence, which allows customizing it in wild and imaginative ways. This is a very powerful feature, which one should usually avoid overusing. pychoir is built around the idea of using this power to build a lean and mean matcher implementation that looks like a custom DSL but is actually completely standard Python 3.

    What is the project status?

    pychoir has quite a vast range of Matchers built in as well as basic API Reference documenting them. New ideas are still plenty and more can be discussed in Discussions. Documentation will receive updates as well. Most remarkably fancy examples are missing. Making pychoir easier to contribute to is also on the list.

    Where does the name come from?

    It comes from the French word pochoir which means a drawing technique using templates. For some reason this method of matching in tests reminds me of drawing with those. A French word was chosen because it happens to start with a p and a vowel πŸ˜‰

    Visit original content creator repository https://github.com/kajaste/pychoir
  • investly

    Investly

    Investly is a full-stack stock management app that allows users to add, edit, and delete transactions, track the performance of their portfolio, and check detailed information about stocks.

    Table of Contents

    Technologies Used

    • Design: Figma
    • Frontend: Vite React Redux
    • Backend: Node.js Express
    • Database: PostgreSQL Sequelize
    • Hosting: Render

    Features

    • Stock Information: Access detailed information about stocks, including price history and key metrics, using a third-party API.

    Stock Info


    • Portfolio Performance: Monitor the performance of your investment portfolio in real-time.

    Dashboard


    • Manage Transactions: Easily log and edit your stock transactions including buys and sells.

    New Transaction


    • Theme Selector: Customizable theme that includes both light and dark options for a more comfortable viewing experience.

    Light Mode


    • User Authentication: Secure user authentication and session management.

    Login

    Usage

    To use the application:

    1. Navigate to Investly Live Demo.
    2. Register or use the demo user.
    3. Start adding transactions from your favorite stocks (ie: AAPL, MSFT, DIS etc) and monitor your portfolio performance.

    Project Structure

    • Frontend: Built with React, using Vite and Redux for state management. The UI is designed in Figma. All components, including forms, cards, and tables, were created manually, with minimal use of external libraries.
    • Backend: Powered by Node.js and Express, with Sequelize managing database interactions and PostgreSQL as the database.
    • Database: Utilizes PostgreSQL for storing user and stock data, accessed and manipulated through Sequelize ORM.
    • Third-Party API: Used to fetch real-time stock information and historical data.

    Key Files and Directories

    • frontend/: Contains all the React components, Redux store, and assets.
    • backend/: Includes Express server setup, API routes, and database models.

    License

    This project is licensed under the MIT License – see the LICENSE file for details.

    Visit original content creator repository https://github.com/keomalima/investly
  • Grand-Jester-Origin

    Grand Jester Origin cover

    🎭 Grand Jester Origin 🎭

    This Pack Adds:

    • Custom Origin

    Origin Detail:

    Icon: Player Head
    Impact: πŸ”΄πŸ”΄πŸ”΄
    Description: Once hailed as ‘The Best Jester’ in all the lands, you’ve returned with even more cunning and flair. As the Grand Jester, wield your wits and whimsy to manipulate, dazzle, and outsmart. With an arsenal of jests and tricks upgraded for a new era, prove again why your blend of humor and guile is unmatched.

    Positive 🟒:

    • Mockery of Monarchs: Mock hostile mobs, causing them to become confused and attack each other. (Primary)
    • Spectral Summon: Summon a ghostly audience that distracts all nearby enemies while you disappear for a short time. (Secondary)
    • Darting Quip: With a flick of the wrist and a sharp eye, unleash your hidden talent for hurling darts. No bow needed, just your innate jesters’ agility to launch arrows straight at your foes. (Attack)
    • Cap and Bells: Wear a Jester’s Hat and be granted agility boosts and reduced fall damage.
    • Artisan’s Jest: Craft the Marotte, a symbol of wit and mischief.
    • Tailor’s Mirth: Craft the vibrant Patchwork Cloak, blending color and mystery into every thread.

    Neutral 🟑:

    • Jester’s Guise: Alter your stature at will, shifting between your full height, a more compact form of one and a half blocks, and a discreet one block tall. (Save Toolbar Activator = Grow) or (Load Toolbar Activator = Shrink)
    • Fool’s Escape: Gain a speed burst when health is low, allowing you to escape danger.
    • Show Stopper: When you die, rainbow fireworks go off damaging people around you.

    Negative πŸ”΄:

    • Not Taken Seriously: As a notorious jester, your flair for amusement often overshadows your intent. Villagers won’t do trades with you and animals shy away, unsure if your gestures are genuine or just another jest.
    • Laughter’s Fatigue: You get hungry faster.
    • Overwhelming Jest: Hostile mobs have a small chance of becoming enraged (getting a brief Strength boost) if mocked too frequently.
    • Misstep of Mirth: Occasionally, when attempting to jump, you might “trip” and get a brief slowness effect.

    Dependencies

    This datapack requires the following to function properly:

    • Fabric Loader – Recommend loader the mods run on.
    • Fabric API – Necessary for running mods in the Fabric mod loader environment.
    • Origins Mod – A Minecraft mod that allows you to choose an Origin at the beginning, granting various abilities and drawbacks.
    • Pehkui – A Minecraft mod that allows for changing the size of any entity.
    • Grand Jester (Resources) – A resource pack that contains all of the translation files and custom item models

    Installation

    To install the Grand Jester Origin datapack, follow these steps:

    1. Make sure you have all dependencies installed.
    2. Download the latest release of Grand Jester Origin from the release page.
    3. Place the downloaded file in the datapacks folder of your Minecraft world directory.
    4. Restart your Minecraft world or use /reload if the world is already running.
    Visit original content creator repository https://github.com/0vergrown/Grand-Jester-Origin
  • aiCodeReviewer

    AI Code Reviewer

    AI Code Reviewer is a web application that utilizes Google’s Gemini Flash 2.0 API to analyze and review code snippets. Built with React.js for the frontend and Node.js for the backend, it provides an AI-driven code review experience.

    Features

    • AI-Powered Code Review: Uses Google’s Gemini Flash 2.0 API for code analysis.
    • Syntax Highlighting: Enhanced code readability with Prism.js and React Simple Code Editor.
    • Markdown Support: Displays AI feedback in markdown format.
    • Real-time Feedback: Fast and interactive code review experience.
    • Modern UI: Designed with TailwindCSS and Lucide React icons.
    • Deployed on Render: Accessible online with backend and frontend hosted seamlessly.

    Tech Stack

    Frontend

    • React.js
    • Vite
    • TailwindCSS
    • Axios
    • Prism.js
    • React Markdown
    • React Simple Code Editor

    Backend

    • Node.js
    • Express.js
    • @google/generative-ai (Gemini Flash 2.0)
    • Dotenv
    • Cors

    Installation

    Prerequisites

    Ensure you have Node.js and npm installed.

    Clone the Repository

    git clone https://github.com/KhushiPandey8/aicoderreviewer.git
    cd aicoderreviewer

    Backend Setup

    cd backend
    npm install
    npm start

    Frontend Setup

    cd ../frontend
    npm install
    npm run dev

    Deployment

    This project is deployed on Render. You can access it here.

    Deploying on Render

    1. Create a Render account.
    2. Deploy the backend as a web service.
    3. Deploy the frontend as a static site and configure it to point to the backend URL.
    4. Set up necessary environment variables.

    Contributing

    We welcome contributions! Follow these steps to contribute:

    Fork the Repository

    1. Go to the repository on GitHub.
    2. Click on the Fork button (top right corner) to create a copy of the repository under your GitHub account.

    Clone Your Fork

    git clone https://github.com/KhushiPandey8/aicoderreviewer.git
    cd aicoderreviewer

    Create a Branch

    git checkout -b feature-name

    Make Changes and Commit

    1. Make your changes in the appropriate files.
    2. Stage your changes: git add .
    3. Commit your changes: git commit -m "Added new feature"

    Push to Your Fork

    git push origin feature-name

    Create a Pull Request

    1. Go to your forked repository on GitHub.
    2. Click on the Compare & pull request button.
    3. Add a descriptive title and comment about the changes.
    4. Submit the Pull Request.

    Contribution Path

    • Frontend contributions: frontend/
    • Backend contributions: backend/
    • API integrations: backend/server.js
    • UI/UX improvements: frontend/src/

    License

    This project is licensed under the ISC License.

    Author

    Developed by Khushi Pandey.


    Feel free to contribute and improve AI Code Reviewer! πŸš€

    =====

    Visit original content creator repository
    https://github.com/KhushiPandey8/aiCodeReviewer

  • Simple-CRUD

    Simple CRUD using PHP,MYSQL,REACT,BABLE,JQUERY,BOOTSTRAP

    Getting Started

    CRUD operations with PHP, MySQL, React, Babel, jQuery and Bootstrap.

    What is React ? (in One Word)

    React is only the V in MVC.

    What will do what ?

    PHP – will handle server side script.
    MySQL – will store our data.
    React – will make our UI fast and interactive.
    Babel – will compile our JavaScript so we don’t have to wait for browser support.
    jQuery – will do AJAX requests. React official docs shows jQuery examples.
    Bootstrap – will make our UI look better.

    Installation

    Step 1 : Create Database

    api_db (or Whatever_Name)
    

    Step 2 : Import SQL file into Database

    api_db.sql
    

    Step 3 : Update Project Configuration Files

    - api/config/core.php
    Update following variables as per your server config
    $home_url = "http://localhost/Simple-CRUD/";
    
    - api/config/database.php
    Update following variables as per your database config
    $host = "localhost";
    private $db_name = "api_db";
    private $username = "root";
    private $password = "mysql"; // If you're using xampp keep it blank
    

    Step 4 : Go Live

    http://localhost/Simple-CRUD
    

    That’s all Folks !!

    Visit original content creator repository
    https://github.com/dr5hn/Simple-CRUD