Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
Alfredredbird committed Dec 1, 2023
2 parents b8f8517 + d9af8d4 commit 2d50f9d
Show file tree
Hide file tree
Showing 18 changed files with 190 additions and 134 deletions.
16 changes: 14 additions & 2 deletions .github/workflows/black.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,22 @@
name: Lint
name: Format and Lint Code

on: [push, pull_request]
on:
- push
- pull_request

jobs:
format:
name: Format Code (isort)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: isort/isort-action@v1
with:
requirements-files: "requirements.txt"
lint:
name: Lint Code (Black)
runs-on: ubuntu-latest
needs: format
steps:
- uses: actions/checkout@v3
- uses: psf/black@stable
Expand Down
25 changes: 9 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,14 @@ Alfred has a simple-to-use UI and is really straightforward. :D
The main idea of Alfred is to discover usernames that are requested from an input.
Alfred is successful at this task almost 90% of the time.
Our tool was created by me and is available for your use.
I do not take responsibility for any malicious actions and or responsibility caused by my tool. :(
Please note that Alfred was created to help new programers or pentesters get into the world of OSINT. My end term goal is to make Alfred as perfect as I can and make it easy for new programmers to understand. Also take note that Alfred is optimised for python 12. If you want to contribute, make a fork and make a pull request to submit your changes. :D I am proud to anounce that Alfred has over 700 weekly downloads!
I do not take responsibility for any malicious actions and/or responsibility caused by my tool. :(
Please note that Alfred was created to help new programmers or pentesters get into the world of OSINT. My end term goal is to make Alfred as perfect as I can and make it easy for new programmers to understand. Also take note that Alfred is optimised for Python 3.12. If you want to contribute, make a fork and make a pull request to submit your changes. :D I am proud to anounce that Alfred has over 700 weekly downloads!

<img width="502" alt="imasdasdage" src="https://github.com/Alfredredbird/alfred/assets/105014217/c085915e-5803-4b4f-9d25-efc96822ac19">


# 📦 Installation
The requirements will Automatically Be Installed.
The requirements will be automatically installed.

git clone https://github.com/alfredredbird/alfred
cd alfred && sudo pip3 install -r requirements.txt
Expand Down Expand Up @@ -106,8 +106,6 @@ The requirements will Automatically Be Installed.
</tr>
</table>



# 📖 Requirments

There Is A Lot Lol
Expand All @@ -128,9 +126,8 @@ There Is A Lot Lol
- [x] Italian
- [x] Hebrew
- [x] Spanish
- [ ] French (Comming Soon)
- [ ] Arabic (Comming Soon)

- [x] French
- [x] Arabic

# 📕 Upcoming Features
(They Are Great First Issues :D)
Expand All @@ -139,22 +136,19 @@ There Is A Lot Lol
- [ ] Webscraper
- [ ] Phone Number OSINT





# 🍿 Showcase
Alfred has a wide variety of options to use.
Typing -h twice shows the help menu.

<img width="434" alt="imaasdasdasage" src="https://github.com/Alfredredbird/alfred/assets/105014217/756d0b3b-6c37-425d-ae98-7ab00befb77d">


# ⁉️ Need Help?
Check out https://github.com/Alfredredbird/alfred/issues or the WiKi for help.
Still Need Help? Contact Below :D

# 🤔 Cant Find The Site Your Looking For?
Make a pullrequest or a Bug report with the site and we will add it. :D
Make a pull request or a bug report with the site and we will add it. :D

# 📗 Info:

<table>
Expand All @@ -176,9 +170,8 @@ Make a pullrequest or a Bug report with the site and we will add it. :D
</tr>
</table>


# 📙 Articles
There has been several aritcles written about our tool. Feal free to check them out :D Theses articales belong to their resectfull owners.
There has been several articles written about our tool. Feal free to check them out :D Theses articles belong to their respectful owners.
<table>
<tr>
<th>Habr</th>
Expand Down
42 changes: 28 additions & 14 deletions brib.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
#!/usr/bin/env python3
from __future__ import print_function

import datetime
import os
import site
import time
Expand All @@ -8,10 +10,15 @@
from socket import socket
from time import sleep
from timeit import default_timer

from alive_progress import *
from colorama import Back, Fore, Style
from rich.console import Console

from lang.en import *
from modules.configcheck import *
from modules.crypt import *
from modules.lang import *
from modules.modules import *
from modules.printmodules import *
from modules.scanmodules import *
Expand Down Expand Up @@ -47,7 +54,7 @@
siteList = []
siteErrors = []
siteNSFW = []
#loads the language
# loads the language
script_dir = os.path.dirname(os.path.realpath(__file__))
os.chdir(script_dir)
language_code = getLang(config)
Expand All @@ -62,10 +69,10 @@
"sites",
"lang",
]
create_folders(folders_to_create,language_module)
create_folders(folders_to_create, language_module)
# gets the defualt browser and system information
browser = get_default_browser()
print(language_module.browser + browser )
print(language_module.browser + browser)
# gets the version of Alfred
version = configC(language_module)
# gets the info to encrypt
Expand All @@ -88,7 +95,7 @@
# this prints the start up screen and passes the verion varaible in
print_logoscreen(version, config)
# does config stuff
configUpdateStuff(config, browser,language_module)
configUpdateStuff(config, browser, language_module)
# this is the variable that gets the username
uname = input(f"{language_module.target}")
# this removes the comma and puts the usernames into a list
Expand All @@ -109,16 +116,23 @@
"-q": [qexit, []],
"-gsl": [
siteListGen,
[console, testall, get_random_string, domain_extensions, uname,language_module],
[
console,
testall,
get_random_string,
domain_extensions,
uname,
language_module,
],
],
"-c": [proxyCheck, [modes, input1]],
"-lp": [list_proxys, []],
"-h": [print_help, []],
"--help": [print_help, []],
"-d": [redirects1, [modes, input1]],
"-u": [unameinfo, [uname,language_module]],
"-u": [unameinfo, [uname, language_module]],
"-Cat": [catFile, []],
"--Config": [configEditor, [config,language_module]],
"--Config": [configEditor, [config, language_module]],
"-p": [ping, []],
"--ping": [ping, []],
"-r": [read_save, [slectpath]],
Expand Down Expand Up @@ -189,7 +203,7 @@
except TypeError():
print(language_module.error2)
else:
print(Fore.RED + f"{language_module.error3}"+ Fore.RESET)
print(Fore.RED + f"{language_module.error3}" + Fore.RESET)
exit(69)
if "--Wiki" in input1:
wiki(language_module)
Expand Down Expand Up @@ -228,16 +242,16 @@
# determins what list of sites to use.
if fastMode == 0:
# fastmode0 is the default scan mode
scanFileList(siteList, "./sites/sites.json",language_module)
scanFileList(siteList, "./sites/sites.json", language_module)
if fastMode == 1:
# fastmode1 is the fast scan mode
scanFileList(siteList, "./sites/fsites.json",language_module)
scanFileList(siteList, "./sites/fsites.json", language_module)
if fastMode == 2:
# fastmode2 is the scan from custom site list
scanFileList(siteList, slectpath,language_module)
scanFileList(siteList, slectpath, language_module)
if fastMode == 3:
# fastmode2 is the scan from custom site list
scanFileList(siteList, "./sites/Megasites.json",language_module)
scanFileList(siteList, "./sites/Megasites.json", language_module)
# prints ui stuff
print(Fore.GREEN + f"{language_module.scan1}" + uname + Fore.RESET)
print("===========================================================")
Expand Down Expand Up @@ -269,7 +283,7 @@
webscrape,
siteErrors,
date,
language_module
language_module,
)
i += 1

Expand All @@ -290,4 +304,4 @@ def is_what_percent_of(num_a, num_b):
if "Y" in startagain or "y" in startagain:
exec(open("brib.py").read())
elif "N" in startagain or "n" in startagain:
exit()
exit()
14 changes: 10 additions & 4 deletions lang/ar.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# ar.py
# Arabic

encrypt1 = 'تشفير المفتاح...'
encrypt1 = "تشفير المفتاح..."

title1 = "شكرا جزيلا لشركائنا!"

Expand Down Expand Up @@ -63,9 +63,13 @@

note = "ملحوظة! "
path = "المسار: ⤷ "
warning1 = "قد لا تسمح العديد من المواقع بتنزيل ملفات مواقعها. استخدم على مسؤوليتك الخاصة."
warning1 = (
"قد لا تسمح العديد من المواقع بتنزيل ملفات مواقعها. استخدم على مسؤوليتك الخاصة."
)
warning2 = "استخدام Webscraper بطيء جدًا."
warning3 = "هذا هو إطلاقك الأول: D قد تحتاج إلى إعادة تشغيل Alfred لاستخدام جميع الوحدات"
warning3 = (
"هذا هو إطلاقك الأول: D قد تحتاج إلى إعادة تشغيل Alfred لاستخدام جميع الوحدات"
)
warning4 = "أنت تستخدم إصدارًا مسبقًا من Alfred!"

confirm1 = "هل تريد تنزيل الصور / مقاطع الفيديو؟ [Y / n] ⤷ "
Expand Down Expand Up @@ -102,7 +106,9 @@
error3 = "لا يمكن العثور على ملف الحفظ!"
error4 = "الدليل غير موجود."
error5 = "لا يمكن العثور على الملفات الضرورية. محاولة إعادة تثبيت Alfred"
error6 = "أوه خطأ! يبدو أن الاتصال لا يعمل. تحقق من اتصالك أو الوكيل ، ثم حاول مرة أخرى:"
error6 = (
"أوه خطأ! يبدو أن الاتصال لا يعمل. تحقق من اتصالك أو الوكيل ، ثم حاول مرة أخرى:"
)
error7 = "لا يمكن العثور على ملف الموقع"
error8 = "خطأ في تنزيل محتوى الويب!"
error9 = "خطأ في ملف الموقع"
Expand Down
13 changes: 6 additions & 7 deletions lang/en.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# en.py
#English
# English

encrypt1 = 'Encrypting Key...'
encrypt1 = "Encrypting Key..."

title1 = "Many Thanks To Our Partners!"

Expand All @@ -20,10 +20,10 @@
config7 = "Creating folder: "
config8 = "Folder already exists: "

configOption1 = "[1] Check for updates: "
configOption2 = "[2] Show tips: "
configOption1 = "[1] Check for updates: "
configOption2 = "[2] Show tips: "
configOption3 = "[3] Site Download Path: "
configOption4 = "[4] Browser: "
configOption4 = "[4] Browser: "
configOption5 = "[5] Language: "
configOptionA = "[A] Clean Up Alfred. (This Removes Temporary Files)"
configOptionB = "[B] Developer Tools."
Expand Down Expand Up @@ -52,7 +52,7 @@
configOption1Message2 = "Ok! [checkforupdates] Is Set For No. Changing To Yes"
configOption2Message2 = "Ok! [showtips] Is Set For No. Changing To Yes"
configOptionBMessage2 = "DONT Give The Following Keys To Anyone But A Alfred Developer."
configOptionBMessage3 = "privatekey: "
configOptionBMessage3 = "privatekey: "
configOptionBMessage4 = "syscrypt: "

target = "Target: ⤷ "
Expand Down Expand Up @@ -144,4 +144,3 @@
# # Example of using placeholders in messages
# filename = "example.txt"
# print(messages.file_not_found.format(filename=filename))

14 changes: 8 additions & 6 deletions lang/es.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# es.py
# Español

encrypt1 = 'Cifrando Clave...'
encrypt1 = "Cifrando Clave..."

title1 = "¡Muchas gracias a nuestros socios!"

Expand All @@ -20,10 +20,10 @@
config7 = "Creando carpeta:"
config8 = "La carpeta ya existe:"

configOption1 = "[1] Buscar actualizaciones: "
configOption2 = "[2] Mostrar consejos: "
configOption1 = "[1] Buscar actualizaciones: "
configOption2 = "[2] Mostrar consejos: "
configOption3 = "[3] Ruta de descarga del sitio: "
configOption4 = "[4] Navegador: "
configOption4 = "[4] Navegador: "
configOption5 = "[5] Idioma: "
configOptionA = "[A] Limpiar Alfred. (Esto elimina archivos temporales)"
configOptionB = "[B] Herramientas de desarrollo."
Expand Down Expand Up @@ -51,8 +51,10 @@

configOption1Message2 = "¡Ok! [checkforupdates] está configurado en No. Cambiando a Sí"
configOption2Message2 = "¡Ok! [showtips] está configurado en No. Cambiando a Sí"
configOptionBMessage2 = "NO proporcione las siguientes claves a nadie que no sea un desarrollador de Alfred"
configOptionBMessage3 = "claveprivada: "
configOptionBMessage2 = (
"NO proporcione las siguientes claves a nadie que no sea un desarrollador de Alfred"
)
configOptionBMessage3 = "claveprivada: "
configOptionBMessage4 = "syscrypt: "

target = "Objetivo: ⤷ "
Expand Down
10 changes: 7 additions & 3 deletions lang/fr.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# fr.py
# Français

encrypt1 = 'Clé de chiffrement...'
encrypt1 = "Clé de chiffrement..."

title1 = "Merci beaucoup à nos partenaires !"

Expand Down Expand Up @@ -52,7 +52,9 @@

configOption1Message2 = "Ok! [checkforupdates] est défini sur Non. Changement en Oui"
configOption2Message2 = "Ok! [showtips] est défini sur Non. Changement en Oui"
configOptionBMessage2 = "NE DONNEZ PAS LES CLÉS SUIVANTES À QUICONQUE SAUF À UN DÉVELOPPEUR D'ALFRED."
configOptionBMessage2 = (
"NE DONNEZ PAS LES CLÉS SUIVANTES À QUICONQUE SAUF À UN DÉVELOPPEUR D'ALFRED."
)
configOptionBMessage3 = "privatekey: "
configOptionBMessage4 = "syscrypt: "

Expand All @@ -73,7 +75,9 @@
confirm2 = "Exécuter à nouveau ? : [Y/n] : ⤷ "

prompt1 = "Entrez à nouveau le site : ⤷ "
prompt2 = "Veuillez signaler tous les bogues ou erreurs à notre dépôt ou serveur Discord."
prompt2 = (
"Veuillez signaler tous les bogues ou erreurs à notre dépôt ou serveur Discord."
)
prompt3 = "Vous pouvez désactiver la mise à jour dans le fichier de configuration"
prompt4 = "Rejoignez notre Discord : https://discord.gg/xrdjxyuSQt"
prompt5 = "Ok! Je demanderai plus tard...."
Expand Down
Loading

0 comments on commit 2d50f9d

Please sign in to comment.