├── .editorconfig ├── .gitignore ├── README.md ├── components ├── Account.vue ├── Footer.vue ├── Nav.vue ├── Rating.vue └── Repo.vue ├── jsconfig.json ├── meta.js ├── nuxt.config.js ├── package.json ├── pages ├── index.vue └── u │ └── _user.vue ├── static └── favicon.ico └── store └── README.md /.editorconfig: -------------------------------------------------------------------------------- 1 | # editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | charset = utf-8 9 | trim_trailing_whitespace = true 10 | insert_final_newline = true 11 | 12 | [*.md] 13 | trim_trailing_whitespace = false 14 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Created by .ignore support plugin (hsz.mobi) 2 | ### Node template 3 | # Logs 4 | /logs 5 | *.log 6 | npm-debug.log* 7 | yarn-debug.log* 8 | yarn-error.log* 9 | 10 | # Runtime data 11 | pids 12 | *.pid 13 | *.seed 14 | *.pid.lock 15 | 16 | # Directory for instrumented libs generated by jscoverage/JSCover 17 | lib-cov 18 | 19 | # Coverage directory used by tools like istanbul 20 | coverage 21 | 22 | # nyc test coverage 23 | .nyc_output 24 | 25 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 26 | .grunt 27 | 28 | # Bower dependency directory (https://bower.io/) 29 | bower_components 30 | 31 | # node-waf configuration 32 | .lock-wscript 33 | 34 | # Compiled binary addons (https://nodejs.org/api/addons.html) 35 | build/Release 36 | 37 | # Dependency directories 38 | node_modules/ 39 | jspm_packages/ 40 | 41 | # TypeScript v1 declaration files 42 | typings/ 43 | 44 | # Optional npm cache directory 45 | .npm 46 | 47 | # Optional eslint cache 48 | .eslintcache 49 | 50 | # Optional REPL history 51 | .node_repl_history 52 | 53 | # Output of 'npm pack' 54 | *.tgz 55 | 56 | # Yarn Integrity file 57 | .yarn-integrity 58 | 59 | # dotenv environment variables file 60 | .env 61 | 62 | # parcel-bundler cache (https://parceljs.org/) 63 | .cache 64 | 65 | # next.js build output 66 | .next 67 | 68 | # nuxt.js build output 69 | .nuxt 70 | 71 | # Nuxt generate 72 | dist 73 | 74 | # vuepress build output 75 | .vuepress/dist 76 | 77 | # Serverless directories 78 | .serverless 79 | 80 | # IDE / Editor 81 | .idea 82 | 83 | # Service worker 84 | sw.* 85 | 86 | # macOS 87 | .DS_Store 88 | 89 | # Vim swap files 90 | *.swp 91 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Github Profile Viewer 2 | Made with Nuxtjs and WindiCSS. 3 | 4 | # Features 5 | - See profiles repos with most of details. 6 | - Access to profiles Twitter account and websites. 7 | - Get basic ratings about profile (like bio etc.). 8 | 9 | # Hosting 10 | You can use all package managers. 11 | 12 | For install modules: 13 | on yarn : ```yarn``` 14 | on npm: ```npm install``` 15 | on pnpm: ```pnpm install``` 16 | 17 | For development server: 18 | on yarn : ```yarn dev``` 19 | on npm: ```npm run dev``` 20 | on pnpm: ```pnpm dev``` 21 | 22 | # Thanks to 23 | [NuxtJS](https://nuxtjs.org) and [Windi CSS](https://windicss.org) for awesome libaries and tools. 24 | 25 | [Arda Soyturk's Twitter Profile Viewer](https://github.com/ardasoyturk/twitter-profile-viewer) 26 | [Eggsy's Lanyard Visualizer](https://github.com/eggsy/lanyard-visualizer) 27 | Because they're insipired me to make tools like this. 28 | -------------------------------------------------------------------------------- /components/Account.vue: -------------------------------------------------------------------------------- 1 | 45 | 46 | 86 | 87 | 97 | -------------------------------------------------------------------------------- /components/Footer.vue: -------------------------------------------------------------------------------- 1 | 12 | 13 | 18 | 19 | 21 | -------------------------------------------------------------------------------- /components/Nav.vue: -------------------------------------------------------------------------------- 1 | 13 | 14 | 19 | 20 | 22 | -------------------------------------------------------------------------------- /components/Rating.vue: -------------------------------------------------------------------------------- 1 | 24 | 25 | 60 | 61 | 63 | -------------------------------------------------------------------------------- /components/Repo.vue: -------------------------------------------------------------------------------- 1 | 45 | 46 | 67 | 68 | 70 | 71 | -------------------------------------------------------------------------------- /jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "baseUrl": ".", 4 | "paths": { 5 | "~/*": ["./*"], 6 | "@/*": ["./*"], 7 | "~~/*": ["./*"], 8 | "@@/*": ["./*"] 9 | } 10 | }, 11 | "exclude": ["node_modules", ".nuxt", "dist"] 12 | } 13 | -------------------------------------------------------------------------------- /meta.js: -------------------------------------------------------------------------------- 1 | const description = 2 | "See short information about github users." 3 | 4 | export default { 5 | title: "Github Profile Viewer", 6 | meta: [ 7 | { charset: "utf-8" }, 8 | { name: "viewport", content: "width=device-width, initial-scale=1" }, 9 | { 10 | hid: "description", 11 | name: "description", 12 | content: description, 13 | }, 14 | /* Twitter */ 15 | { 16 | hid: "twitter:card", 17 | name: "twitter:card", 18 | content: "summary", 19 | }, 20 | { 21 | hid: "twitter:site", 22 | name: "twitter:site", 23 | content: "@AnakinS07677978", 24 | }, 25 | { 26 | hid: "twitter:creator", 27 | name: "twitter:creator", 28 | content: "@AnakinS07677978", 29 | }, 30 | { 31 | hid: "twitter:title", 32 | name: "twitter:title", 33 | content: "github-profile-viewer-six.vercel.app", 34 | }, 35 | { 36 | hid: "twitter:description", 37 | name: "twitter:description", 38 | content: description, 39 | }, 40 | { 41 | hid: "twitter:image", 42 | name: "twitter:image", 43 | content: "/icon.png", 44 | }, 45 | /* Open-Graph */ 46 | { 47 | hid: "og:title", 48 | name:"og:title", 49 | content:"Github Profile Viewer", 50 | }, 51 | { 52 | hid: "og:type", 53 | name: "og:type", 54 | content: "website", 55 | }, 56 | { 57 | hid: "og:site_name", 58 | name: "og:site_name", 59 | content: "github-profile-viewer-six.vercel.app", 60 | }, 61 | { 62 | hid: "og:description", 63 | name: "og:description", 64 | content: description, 65 | }, 66 | { 67 | hid: "og:image", 68 | name: "og:image", 69 | content: "https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png", 70 | }, 71 | /* Others */ 72 | { 73 | hid: "theme-color", 74 | name: "theme-color", 75 | content: "#991b1b", 76 | }, 77 | ].map((i) => { 78 | if (i.name && !i.property) i.property = i.name 79 | return i 80 | }), 81 | link: [ 82 | { 83 | rel: "icon", 84 | type: "image/x-icon", 85 | href: "/favicon.ico", 86 | }, 87 | ], 88 | } 89 | -------------------------------------------------------------------------------- /nuxt.config.js: -------------------------------------------------------------------------------- 1 | import head from './meta.js' 2 | 3 | export default { 4 | // Target: https://go.nuxtjs.dev/config-target 5 | target: 'static', 6 | 7 | // Global page headers: https://go.nuxtjs.dev/config-head 8 | head, 9 | 10 | // Global CSS: https://go.nuxtjs.dev/config-css 11 | css: [ 12 | ], 13 | 14 | // Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins 15 | plugins: [ 16 | ], 17 | 18 | // Auto import components: https://go.nuxtjs.dev/config-components 19 | components: true, 20 | 21 | // Modules for dev and build (recommended): https://go.nuxtjs.dev/config-modules 22 | buildModules: [ 23 | 'nuxt-windicss', 24 | ], 25 | 26 | // Modules: https://go.nuxtjs.dev/config-modules 27 | modules: [ 28 | // https://go.nuxtjs.dev/axios 29 | '@nuxtjs/axios', 30 | ], 31 | 32 | // Axios module configuration: https://go.nuxtjs.dev/config-axios 33 | axios: {}, 34 | 35 | // Build Configuration: https://go.nuxtjs.dev/config-build 36 | build: { 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "github-profile-viewer", 3 | "version": "1.0.0", 4 | "private": true, 5 | "scripts": { 6 | "dev": "nuxt", 7 | "build": "nuxt build", 8 | "start": "nuxt start", 9 | "generate": "nuxt generate" 10 | }, 11 | "dependencies": { 12 | "@nuxtjs/axios": "^5.13.6", 13 | "core-js": "^3.15.1", 14 | "nuxt": "^2.15.7" 15 | }, 16 | "devDependencies": { 17 | "nuxt-windicss": "^1.1.1" 18 | } 19 | } -------------------------------------------------------------------------------- /pages/index.vue: -------------------------------------------------------------------------------- 1 | 24 | 25 | 34 | -------------------------------------------------------------------------------- /pages/u/_user.vue: -------------------------------------------------------------------------------- 1 | 24 | 25 | 51 | 52 | 62 | -------------------------------------------------------------------------------- /static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mehmetali345Dev/github-profile-viewer/77ca3dfd374841547581e05cf5af571e5261108c/static/favicon.ico -------------------------------------------------------------------------------- /store/README.md: -------------------------------------------------------------------------------- 1 | # STORE 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | This directory contains your Vuex Store files. 6 | Vuex Store option is implemented in the Nuxt.js framework. 7 | 8 | Creating a file in this directory automatically activates the option in the framework. 9 | 10 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/vuex-store). 11 | --------------------------------------------------------------------------------