Git Product home page Git Product logo

apv's Introduction

Hello World ๐Ÿ‘‹!

Uncle bob said "Clean code reads like well-written prose", so why not reading my README.md like you read clean code

library arnaudelub;

export 'welcome/my_name_is_arnaud_delubac';
export 'fully_remote_worker/as_freelance/at_idelub';
export 'cross_plaform_developer/flutter';
export 'experienced_in_ecommerce';
export 'my_editor/vim_4_ever/nvim';
export 'my_os/linux_4_ever/manjaro';
part 'my_career.dart';
const oneYearExperience = '1 year of experience';
const twinapp = 'Twinapp';
const findo = 'Findo';
const elPuntAvui = 'El Punt Avui';
const reliqium = 'Reliqium';
const k8s = 'Kubernetes';
const docker = 'docker';
const azureCloud = 'Azure Cloud';
const typescript = 'typescript';

abstract class MyExperienceAsAFlutterDeveloper {
    bool wasAFlutterDeveloperAtInteractiuImpactedMyCareer();
    @deprecated
    void isAFlutterDeveloperFreelancerAtIDelub();
    @deprecated
    Future<void> willBeCTOAndCoFounderAtFindo();
    void isAJuniorArchitectAtNexplore();
}

/*
 * Quick Note, this class is a lazy singleton, but to avoid any missunderstanding,
 * i am neither lazy nor single!
**/
@LazySingleton(as: MyExperienceAsAFlutterDeveloper)
class MyExperienceAsAFlutterDeveloperImplementation implements MyExperienceAsAFlutterDeveloper {
    final MyCareerRepository _myCareerRepository;
    const MyExperienceAsAFlutterDeveloperImplementation(this._myCareerRepository);
    
    @override
    bool wasAFlutterDeveloperAtInteractiuImpactedMyCareer() {
        _myCareerRepository.addProjectDone(twinapp);
        final bool myFirstAttemptWithFlutterSucceeded = _myCareerRepository.isPublishedAndWorking(twinapp);
        final didILovedIt = true;
        _myCareerRepository.addExperience(oneYearExperience);
        return myFirstAttemptWithFlutterSucceed && didILovedIt;
    }
    
    @override
    void isAFlutterDeveloperFreelancerAtIDelub(){
        _myCareerRepository.addProjectDone(elPuntAvui);
        final today = DateTime.now();
        final startDateAsFreelance = DateTime(2020, 04, 01);
        final int numberOfYears = today.difference(startDateAsFreelance).inYears;
        final year = "year${numberOfYears > 1 ? 's' : ''}";
        _myCareerRepository.addExperience("$numberOfYears $year of experience");
    }
    
    @override
    Future<bool> willBeCTOAndCoFounderAtFindo() async {
        _myCareerRepository.addProjectDone(findo);
        final myLastProjectSucceeded = await _myCareerRepository.isPublishedAndWorking(hero);
        _myCareerRepository.canLevelUp(myLastProjectSucceeded);
        return myLastProjectSucceeded;
    }
    
    @override
    void isAJuniorArchitectAtNexplore() {
        _myCareerRepository.addNewTechStack(k8s)..addNewTechstack(docker)
            ..addNewTechStack(azureCloud)..addNewTechStack(typescript)
        final startDateAsFullStack = DateTime(2021, 03, 01);
        final startDateAsJrArchitect = DateTime(2022, 09, 01);
        final int numberOfYears = today.difference(startDateAsJrArchitect).inYears;
        final year = "year${numberOfYears > 1 ? 's' : ''}";
        _myCareerRepository.addExperience("1 year as fullstack (TS, Flutter, React)")
            ..addExperience("$numberOfYears $year of experience as Jr Architect");
    }
}

extension MyFlutterAppsAndPackages on Flutter {
    List<String> get developedApp => [
        Reliqium,
        Twinapp,
        ElPuntAvui
        Findo,
        Ecohint];
    List<String> get developedPackages => [flutter_fullpdfview, csv_picker_button, flutter_firebase_aut_facade];
}

extension MyLearningPath on AzureCloud {
    List<String> get earnedCertificates => [];
    List<String> get certsPass => [
        AZ-900-Azure-Fundamental,
        AZ-204-Azure-developer,
        AZ-104-Azure-administrator-associate,
        AZ-400-Azure-devops-engineer
    ];
}

My pubspec.yaml:

dependencies:
    - Typescript: 2+
    - Flutter: 4+
    - Python: 6+
    - Angular: 3+
    - Java: 1+
    - Kubernetes: 1+
    - Docker: 1+
    - Azure Cloud: 1+
Links

My articles

Dart isolate and Flutter Compute
Give your main thread som breath!
Flutter and NFC
Control you NFC chip with flutter
Flutter and Firebase Login
All you need to know about Firebase authentication with Flutter (Spanish only)
debounceTime from RxDart and Bloc
Use Rxdart's debounceTime with Bloc (En, Fr, Es)
Flutter, Bloc and Firestore stream
Controle Firestore's stream with Bloc

My open source projects

Flutterence Open source Project, so it can evolve thanks to the community and for the community!
Anyone who want to contribute is welcome to contact me
csv_picker_button Pub Version Load and read you CSV!
Parse your CSV data from a simple button
firebase auth facade Pub Version Login with Firebase!
All the power from firebase authentication in a simple plugin!

apv's People

Contributors

arnaudelub avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

apv's Issues

Ask two questions

  1. I want to adjust the size of the text in the pdf. May I ask if it can be achieved?
    2.Is there any plan to preview the word file in the near future?
    thank you

how to disable page number during dualpage?

I write the code like this:

        pdfView.fromAsset(url_pdf)
                                .defaultPage(604)
                                .backgroundColor(Color.WHITE)
                                .enableAnnotationRendering(false)
                                .pageSnap(false)
                                .nightMode(false)
                                .enableAntialiasing(true)
                                .landscapeOrientation(isLandscape)
                                .dualPageMode(isLandscape)
                                .displayAsBook(isLandscape)
                                .scrollHandle(new DefaultScrollHandle(getContext()))
                                .autoSpacing(true)
                                .enableSwipe(true)
                                .swipeHorizontal(true)
                                .pageFling(true)
                                .fitEachPage(true)
                                .pageFitPolicy(FitPolicy.BOTH)
                        .load();

But the page number shown at the bottom of the screen, i want to disable it permanently or add the prefix before the number. Is it possible? please help.

Thank you.

How can I display a blank page instead of page spacing on the first and last pages?

This is a sample code. Currently, if it's on a page where i == 0 || i == getPageCount() (the first and last pages), the logic will display pageSpacing. I would like to change this pageSpacing to a blank page instead. Can you tell me where I should modify the code?

class PdfFile

private void prepareAutoSpacing(Size viewSize) {
    pageSpacing.clear();
    SizeF pageSize;
    float spacing;
    for (int i = 0; i < getPagesCount(); i++) {
        pageSize = pageSizes.get(i);
        spacing =
                Math.max(
                        0,
                        isVertical
                                ? viewSize.getHeight() - pageSize.getHeight()
                                : viewSize.getWidth() - pageSize.getWidth());
        if (i < getPagesCount() - 1) {
            spacing += spacingPx;
        }
        if (showTwoPages && showCover && (i == 0 || i == getPagesCount() - 1)) {
            pageSpacing.add(spacing);
        } else if (showTwoPages && i == 0) {
            pageSpacing.add(spacing / 1.5f);
        } else if (showTwoPages) {
            if (showCover && i % 2 != 0) {
                pageSpacing.add(spacing / 1.5f);
            } else {
                pageSpacing.add(0f);
            }
        } else {
            pageSpacing.add(spacing);
        }
    }
}

xc

How to display 2 PDF pages?

Hi Arnau and thank you for your modification to this package.

I couldn't understand though how to display 2 PDF pages in the same view. Any directions on that?

Thanks.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.